3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Python 100行で作る Streamlit 株価アプリ ― SNS発信で使えるチャート・サムネイル・AIプロンプト

3
Last updated at Posted at 2026-05-13

⬜️ 本記事について

Streamlit と AI コーディングを活用すれば、HTML / CSS / JavaScript の知識がなくても、自分専用のツールが簡単に作れます。

簡易的なアプリで動作感を掴むとイメージしやすいと思いますので、Python 100〜150 行程度の単一ファイルで完結するアプリを3つ、GitHub にご用意しました。

アプリ 主な機能
1 5分足チャート ローソク足+日足チャートをブラウザで確認
2 SNSサムネイル生成 株価チャートを PNG 画像として出力
3 AIプロンプトビルダー テクニカル指標をプロンプトに自動埋め込み

いずれも 利用データは、yfinance だけです。



⬜️ 1. 窓開けが分かりやすい5分足チャート

いわゆるローソク足チャートを表示するアプリです。次の点を工夫しています。


  • チャートは Altair。株価チャートと騰落率テーブルの日付を揃えて表示
  • 縦の境界線でギャップアップ・ギャップダウンを視覚的に把握しやすく
  • カンマ・スペース・改行で区切ることで、複数の銘柄コードが入力可能



⬜️ 2. SNSサムネイル生成

株価チャートのサムネイル画像を作成するアプリです。次の点を工夫しています。


  • チャートは Matplotlib。ボタンひとつで PNG ダウンロード
  • X(旧Twitter)や note のサムネイルとして利用可能なデザイン
  • ダーク版と Google Finance に寄せたライト版の2種類



■ サムネイル見本(ダーク)




■ サムネイル見本(Google Finance 寄せ)




⬜️ 3. AIプロンプトビルダー

テクニカル指標が埋め込まれたプロンプトを作成するアプリです。次の点を工夫しています。


  • 株クラ向け X 投稿文を3パターン出力するプロンプトを作成
  • RSI / MACD / ボリンジャーバンド / 移動平均などのテクニカル指標を埋め込み
  • ニュース・注目点など、株価だけでは足りない情報を任意で追加可能


  • 【例】作成されたプロンプト
Read more

提供された素材データを踏まえ、**X投稿を3パターン**作成してください。

## ペルソナ:株クラ匿名垢(インフルエンサー)

X(旧Twitter)で活動する中〜上級の匿名株クラスタ。

- 株クラ用語フル活用:リバ・垂れる・踏まされる・GC/DC・地合い・寄り天・引け安・窓開け・板薄・先物主導・材料出尽くし
- 強めの形容詞OK:「やばい」「きつい」「アツい」/銘柄略称OK:任天・ソニグ・東エレ など
- 絵文字2-3個(🚀📉👀🔥💥🩸 など)。**数字の直後**に置くと映える(「-11%🩸」)。末尾に #日本株 など1-2個

## 語り口:です調 × X投稿のリズム

基本「〜です」「〜ます」「〜と考えられます」。ただし全文を「です」で締めるとブログ調になります。X投稿らしさのコツ:

- **体言止めを混ぜる**:「売られ過ぎ圏🩸」「決算控えで様子見ムードです」
- **改行でリズム**:1文1〜2行、ブロック間に空行を入れる
- **冒頭インパクト**:銘柄名・数字・絵文字から入る(例「ENEOS、4週で-11%。」)
- **短文の連打**:長文1個より短文2〜3個
- **問いかけで締める**:「ここは押し目でしょうか、それともデッドキャットか…」
- NG:「〜だ/〜である」(硬い)/「〜だよ/〜じゃん」(カジュアル過ぎ)/「〜ですよね/〜ですね」(女性寄り)

## 視点:短期(直近20営業日)の3パターン切り口

- パターン1: 直近20日の流れを1文で言い切る(インパクト重視)
- パターン2: 期間中に効いた/効かなかったテーマを示す(考察・深掘り)
- パターン3: 今後20日程度の中期見どころをまとめる(フォワードルッキング)

## ステップ0:各パターンのテーゼを決める(本文を書く前に必ず実行)

3パターンそれぞれの核心メッセージを1行で決める。テーゼは「読者がリツイートしたくなる、示唆に富む命題」。

## ニュース・注目点

JX金属、今期最終は9%増で2期連続最高益、前期配当増額も今期減配 今期の業績予想の物足りなさと自己株TOB対応のCB(転換社債型新株予約権付社債)発行による潜在的な希薄化懸念が重なり、株価は大幅な急落を記録 【テクニカル指標】 銘柄: JX ADVANCED METALS CORPORATION (5016) 終値: 4,651円 騰落率: 前日比 -2.33% / 1週 -2.49% / 1ヶ月 +4.82% / 3ヶ月 +74.08% 移動平均: SMA25 4,708円(乖離 -1.2%) / SMA75 3,811円(乖離 +22.0%) BB(25): 上限5,685 / 下限3,731円 RSI14: 49.8 MACD: 253.01 / シグナル: 289.03 / ヒスト: -36.02 → 下降モメンタム ATR14: 356.94 52週高値: 5,720円(乖離 -18.7%) / 52週安値: 739円(乖離 +529.0%)

## 制約

- 各投稿は約140字以内
- データに無い数字・銘柄・イベントを事実として書かない(推測は「〜の可能性があります」と明示)
- 投資勧誘・断定的推奨(「買うべき」「必ず上がる」)は厳禁
- 数字は具体的に(「大きく上昇」より「+2.3%」)
- 事実の羅列にせず「だから何か(含意)」を必ず示す

## 出力形式

【パターン1】(本文) 【パターン2】(本文) 【パターン3】(本文)



  • 【例】AI で生成したX投稿文(3パターンのうち1つ)

JX金属(5016)、3ヶ月で+74%📈
そこに「増益でも減配+CB発行」がぶつかり急落。
上がりすぎた株の宿命、材料出尽くしで売り圧が一気に噴出した格好です。
SMA75乖離まだ+22%🩸
下には余白がある、という点は頭に入れておきたいところ。
#日本株 #非鉄金属



⬜️ 追加データでアプリを拡張

以上の3アプリは yfinance のデータだけで動く簡易的なアプリです。ここにデータを足すと、アプリの厚みが一気に増します。例えば PER・PBR で割安度を比較したり、RSI で売られすぎ・買われすぎを確認したりといった分析が、ひとつのアプリで完結します。

財務指標やテクニカル指標は、証券会社が CSV 形式で提供していますので、こういったサービスを使うのが手軽です。また、決算短信や有価証券報告書は、金融庁管轄の EDINETTDnet が XBRL 形式で提供しています。

CSV 形式はそのまま使えますが、XBRL 形式は活用できる形に整形する必要があります。次の記事から、決算短信と有報の中身を活用する方法を紹介していきます。

3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?