ドル円が最近また159円台に乗ってきましたね。。。僕は子供が生まれてからというもの、夜チャートを確認する時間がほぼゼロになってしまいました。先週も気づいたら大きく動いていて「あ、あのタイミングでポジション持てたのに」と後悔したんです。そこで「もう自分でチャートを見るのは諦めよう」と割り切って、Pythonで自動アラートシステムを作ることにしました。
なぜドル円のアラート自動化が必要か
ドル円(USD/JPY)はFXの中でも最もポピュラーな通貨ペアで、1日の値動きが大きいのが特徴です。2026年5月時点でも159円台と高値圏で推移しており、少し目を離した隙に数十pipsあっという間に動いてしまいます。子育て中の僕みたいに「スマホを常時見られない」という方、同じ悩みを抱えていませんか?そういう人にこそ、Pythonのアラートシステムが刺さると思います。
仕組みの全体像
今回作るシステムはこんな流れです:Python(yfinance)でドル円の価格データを取得 → RSIとMACDを計算 → 条件を満たしたらLINE Notifyに通知 → Windowsタスクスケジューラで15分おきに自動実行
難しそうに見えますが、コードは全部で100行以内に収まります。
必要なライブラリのインストール
pip install yfinance pandas ta requests
taはテクニカル指標のライブラリです。RSIやMACDをワンライナーで計算できるので、初心者にはかなり便利です。僕もこれを知るまでは手計算していました(笑)。
ドル円データ取得とテクニカル指標の計算
import yfinance as yf
import pandas as pd
import ta
import requests
def get_usdjpy_data():
ticker = yf.Ticker("USDJPY=X")
df = ticker.history(period="5d", interval="1h")
df = df.dropna()
return df
def calculate_indicators(df):
df['rsi'] = ta.momentum.RSIIndicator(df['Close'], window=14).rsi()
macd = ta.trend.MACD(df['Close'])
df['macd'] = macd.macd()
df['macd_signal'] = macd.macd_signal()
df['macd_diff'] = macd.macd_diff()
return df
LINEへの通知関数
LINE_TOKEN = "あなたのLINEトークン"
def send_line_notify(message):
url = "https://notify-api.line.me/api/notify"
headers = {"Authorization": f"Bearer {LINE_TOKEN}"}
payload = {"message": message}
response = requests.post(url, headers=headers, data=payload)
return response.status_code
LINE Notifyのトークン取得は notify-bot.line.me から無料で発行できます。5分もあれば完了します。
アラート条件の設定と実行
def check_alert_conditions(df):
latest = df.iloc[-1]
prev = df.iloc[-2]
alerts = []
if latest['rsi'] < 30:
alerts.append(f"⚠️ RSI売られすぎ: {latest['rsi']:.1f}")
elif latest['rsi'] > 70:
alerts.append(f"⚠️ RSI買われすぎ: {latest['rsi']:.1f}")
if prev['macd_diff'] < 0 and latest['macd_diff'] > 0:
alerts.append(f"📈 MACDゴールデンクロス発生!")
elif prev['macd_diff'] > 0 and latest['macd_diff'] < 0:
alerts.append(f"📉 MACDデッドクロス発生!")
if alerts:
price = latest['Close']
message = f"
【ドル円アラート】
現在値: {price:.3f}円
" + "
".join(alerts)
send_line_notify(message)
print(f"アラート送信: {message}")
else:
print(f"条件なし。現在値: {latest['Close']:.3f}円")
if __name__ == "__main__":
df = get_usdjpy_data()
df = calculate_indicators(df)
check_alert_conditions(df)
Windowsタスクスケジューラで自動実行する
このスクリプトをWindowsタスクスケジューラに登録すれば、15分おきに自動でアラートチェックができます。タスクスケジューラを起動 → 「基本タスクの作成」→ トリガーを「毎日・15分ごと」に設定 → 操作を「python alert.py」のパスに指定するだけです。
まとめ
ドル円FXのアラートをPythonで自動化する方法をまとめました。これを導入してから、子供の世話をしながらでも重要な相場の変化だけをキャッチできるようになりました。完璧にチャートを監視するのは難しくても、こういう仕組みを作っておくだけで投資の質がかなり変わります。次は複数通貨ペアへの対応とボリンジャーバンドの組み合わせも試してみる予定です。同じ悩みを持つ方はぜひ試してみてください!
関連サービス
FOREX.com — FX・CFD取引の総合プラットフォーム。多彩な通貨ペアに対応し、自動売買にも活用できます。
【タケルFXスクール】 — FX自動売買のノウハウをゼロから学べるオンラインスクール。Pythonとの連携も解説。
【CL AIM system】 — FX自動売買システムの構築・運用サポート。本格的なアルゴトレードを目指す方に。

