
「株価判断アプリを作って」とAIに頼んではいけない
こういうプロンプトを書こうとしていました。
Next.js(またはPython)を使って、株価判断アプリの基本環境を作って。
tailwindCSSも導入して
止めた。3つ理由がある。
環境構築は頼むだけ損だった
これ、1行で終わります。
npx create-next-app@latest stock-app
Tailwindは対話で聞かれるので、Yesと答えれば入る。「tailwindCSSも導入して」という指示そのものが要らない。
AIに頼むと、同じコマンドを打つのに確認の往復が挟まります。速くなるどころか遅くなる。数えたことはないけど、たぶん3往復ぶんは損していた。
頼む価値があるのは、コマンド1本で終わらないところだけ。
「判断」の中身を書かないと、捏造される
こっちが本題です。
「株価判断アプリ」と書いたとき、何をどう判断するのかは一文字も書いていない。この状態で投げると、AIは判断の中身を自分で作ります。それっぽい形で。
私は前に一度やられていた。
株のスコア表示ツールを作らせたとき、自己資本比率80%以上なら安全、ROE20%以上なら優秀、という基準が出てきた。説明も丁寧についていて、読むと納得する。数字にも見覚えがある気がしてくる。
でも、あの数字の出どころはどこにもありませんでした。「一般的にそう言われている」の顔をして、実際は文章の流れで置かれただけ。
画面はきれいにできる。中身だけ空。これが一番まずい失敗の形だと思っている。
人間なら「知らないので調べます」で止まるところを、機械は止まらずに埋めてくる。しかも埋めたことを言わない。あとから自分で読み返して気づいたときは、けっこう嫌な感じがしました。
書き直したプロンプトはこう。
保有銘柄の集中度を出すスクリプトを追加して。
入力は銘柄コード・株数・取得単価・現在値のCSV。
出力は 1)銘柄ごとの構成比 2)上位1銘柄が全体に占める割合 3)勝敗数と合計損益のズレ。
売買の推奨は出さない。計算結果だけ。
違いは「何を入れて何を出すか」と「やらないこと」が入っていること。ここまで書けば、捏造される余地がない。
逆に言うと、これが書けないうちは、そのアプリはまだ作れません。判断の中身が決まっていないのに判断アプリを作ろうとしていた、というだけの話でした。恥をかいた。
売ると登録が要る
調べていて驚いたのが、これ。
個別銘柄の売買判断を提供して対価を得ると、金融商品取引法の投資助言・代理業にあたります。登録が必要になる。
ここは正直に書いておきます。私が読んだのは解説記事で、条文そのものは開いていません。金融商品取引法の28条と29条のあたりで、金融庁のサイトに制度の説明と登録業者の一覧があります。
売る段になったら、私の要約ではなく、そちらを見てください。間違っていたら困るのは書いた私ではなく、売る人なので。
自分で使うぶんには自由です。でもnoteやココナラで売ろうとした瞬間、話が変わる。無料公開でも「この株は買い」のような推奨を出していると、線の上を歩くことになる。
作ってから気づいたら困っていたと思います。危なかった。
抜け道ではなく、まっとうな回避の仕方が一つある。判断を出さず、事実の計算だけを出すこと。
× 「この銘柄は買い」 → 助言
○ 「この銘柄が口座の67%を占めている」 → 計算
○ 「PERは○倍、業種平均は△倍」 → 事実の提示
前者は売れない。後者は売れます。
しかも自分で使ってみると、役に立つのは後者のほうでした。「買い」と言われても信用しないけど、「67%」と言われると手が止まる。
結局こうなった
Next.jsはやめてPythonにしました。画面より計算が本体だったので。
株価データをどこから取るかが本当の難所で、UIを先に作っていたら、そこで詰まって終わっていたと思う。無料で使えるものはいくつかあるけれど、規約や遅延の条件がそれぞれ違うので、選ぶ前に自分で確認したほうがいい。ここは私もまだ調べきれていません。
作ったのは、CSVを読んで構成比を出すだけのスクリプト。判断は一つもしない。
それで十分でした。というより、判断を出さないと決めたことで、何を作ればいいのかが初めてはっきりした。「買いか売りか」を目標にしていたときは、どこまで作っても足りない気がしていたので。
やらないことを先に決めると、やることが決まる。アプリの話のつもりが、そこがいちばんの収穫だった気がします。