AI活用

FX自動売買Botの作り方|ルール決めからデモ検証まで6ステップで自作する手順

この記事は に運営者が実際に検証した内容に基づきます。


本記事は自動売買Botを自作する技術的な手順の解説であり、投資の助言・勧誘ではありません。投資・自動売買は自己責任で、元本割れのリスクがあります。利益を約束するものではありません。

前回の概要記事で「自分で決めたルールをプログラムに任せて、感情ゼロ・24時間で売買する仕組み」を紹介しました。今回はその続きで、実際にどう作るかを手順に沿って書きます。

最初に言っておくと、最初は誰でも素人です。いきなり全部を理解する必要はないですし、コードを一行も書けなくても始められる入口があります。コードを全文写経するのではなく、要点・考え方・つまずきやすい所にしぼって解説します。

前提:自動売買は「利益も自動」ですが損失も自動で出ます。各ステップはかならずデモ口座(お金を使わない練習口座)で検証してから進めてください。ここだけは飛ばさないでほしいところです。

全体像:6つのステップでできている

FX自動売買Botの作り方の流れ・6ステップの図

作るものを分解すると、たった6つです。難しい言葉が並んで見えても、やることは1つずつシンプルです。

  1. 手法を決める:「どんな形になったら買う/売る」のルールを言葉にする
  2. チャートで目に見える形にする:TradingView の Pine という機能で、ルールをチャートに描いて確認する
  3. コードにする:そのルールを Python で書く
  4. 過去データで試す(バックテスト):昔の値動きでルールを動かして成績を見る
  5. デモ口座で動かす:お金を使わない練習口座で、本物の相場で動かしてみる
  6. 本番は少額から:問題なければ、失っても困らない範囲のお金で始める

上から順にやれば、一つずつ確かめながら積み上げられます。いきなり本番を目指さず、**まず1〜2で「自分のルールがチャートに出る」**ところを最初のゴールにすると挫折しにくいです。

0. 必要なもの

全部そろえる必要はありません。最初は無料のものだけで始められます。

  • パソコン:処理の本体。普段使いのもので十分。
  • 取引ソフト(MetaTrader5・無料):チャート表示や、後で自動売買を動かす土台になる定番ソフト。
  • Python(無料):ルールをコードにするための言語。
  • デモ口座(無料):お金を一切使わずに本物そっくりの相場で試せる練習用の口座。ここが主役級に大事
  • TradingView(無料プランあり):チャートを見たり、Pine でルールを描いて確認するためのサービス。
  • ヒストリカルデータ(多くは無料):バックテスト(過去で試す)に使う、過去の値動きデータ。
  • VPS(任意):24時間動かすためのレンタルPC。最初は不要です。

ソフトの基本部分はほぼ無料で揃います。何を使うべきかは 道具の選び方の記事 で正直に整理しました。

1. 手法を決める(ここが土台。コードより先)

いきなりコードを書きたくなりますが、順番が逆です。まず「どうなったら売買するか」を日本語で決めるのが先。これが全部の土台になります。

ルールは凝らなくていい。たとえばこんな一文で十分です。

「価格が一度ある線を抜けて、そのあと戻ってきた所で、同じ方向にエントリーする」

※ここで出てくるリテストという言葉は、「一度抜けた価格がいったん戻ってくるのを待つこと」。それだけの意味です。

決めるのはこの3つだけ。

  • 入る条件:どんな形になったら買う/売るか
  • やめる条件(損切り):思惑が外れたら、どこで損を確定して撤退するか
  • 利益を取る条件(利確):どこまで来たら利益を確定するか

つまずきポイント①:最初から複雑なルールを作らない。条件を増やすほど「なぜ負けたのか」が分からなくなります。まずは入る・損切り・利確の3つだけ。シンプルなほど後で直しやすいです。

2. チャートで目に見える形にする(Pineで描く)

決めたルールが「本当にその形なのか」を、コードを書く前に目で確かめる段階です。ここを飛ばすと、後で何時間も無駄にします。

使うのは TradingView の Pine。チャートの上に「ここでルールに当てはまった」という印を出してくれる機能です。Pine には専用の書き方がありますが、最初はネットの例をコピーして、数字を少し変えるところから始められます。

やることは2つ。

  • 自分のルールを Pine で書いて、チャートに印(マーク)を出す
  • 過去のいろいろな場面でその印を見て、「自分が狙いたい形に出ているか」を目で確認する

印が変な所に出ていたら、ルールの言葉がまだ曖昧だということ。ここで気づければ、コードを書く前に直せます。

つまずきポイント②:Pine が「正」、コードは後から合わせる。先にチャートで形を確定させ、その通りにコードを書きます。逆(コードを先に書いてチャートで確かめる)にすると、ズレた時にどちらが正しいか分からなくなります。

3. コードにする(Pythonでルールを書く)

ここでようやくプログラミング。とはいえ、やることは「Pineで確認した形を、そのままPythonの言葉に置き換える」だけ。新しく考えることはほとんどありません。

中身を大きく分けるとこうなります。

  1. 値動きのデータを読み込む
  2. ルールに当てはまるか1本ずつチェックする(入る条件)
  3. 当てはまったら「買う/売る」を記録する
  4. 損切り・利確のラインに届いたら手仕舞いする

最初から自分でゼロから書く必要はありません。動く土台(テンプレート)をもらってきて、入る条件の部分だけ自分のルールに差し替えるのが現実的です。1個ずつ、小さく。

つまずきポイント③:コードが書けなくても、ここで止まらなくていい。ノーコードの自動売買ツールや、Pineだけで売買アラートを出す方法もあります。「Pythonで全部書く」は数あるやり方の一つで、必須ではありません。まずは自分に合う入口から。

4. 過去データで試す(バックテスト)

書いたルールが「昔の相場ならどうだったか」を試す段階です。これがバックテストで、ここでBotらしさが一気に出てきます。

やることはシンプルです。

  • 過去の値動きデータにルールを通す
  • 何回エントリーして、どう推移したかを集計する
  • 結果を見て、ルールの条件を少し変えてまた試す

ここで一番伝えたい、この記事で最重要の現実があります。

バックテストが良くても、本番で同じに動くとは限らない。 過去データに合わせてルールを作り込みすぎると、「昔の相場専用の形」ができてしまい、未来では通用しません。これは初心者がほぼ全員はまる落とし穴です。だから次のデモ検証が欠かせません。

つまずきポイント④:良い数字が出ても、すぐ喜ばない。条件をいじって過去の成績を上げるのは簡単ですが、それは「過去にだけ都合のいい形」に寄せているだけのことが多い。バックテストは合格点を取る場所ではなく、明らかにダメなルールをふるい落とす場所だと考えると、ちょうどいい距離感になります。

5. デモ口座で動かす(本物の相場・お金は使わない)

過去でそこそこ動いたら、次は今の相場で動かす。ただし、お金を一切使わないデモ口座で。

ここでようやく「自動で動くBot」の形になります。MetaTrader5 などの取引ソフトとつなぎ、ルールに合った瞬間に自動でエントリー・決済させます。

確認するのはこの2つ。

  • バックテストと同じように動いているか(ズレていたら原因を探す)
  • 想定外の動き(注文が通らない・連打する等)が出ていないか

つまずきポイント⑤:デモは「短く」やらない。数日では相場の色々な顔(荒れた日・静かな日)を見られません。最低でも数週間は回して、バックテストの感触とズレていないかをじっくり見る。ここを焦って本番に進むのが、一番もったいない失敗です。

補足:24時間止めずにデモを回したいなら、ここで VPS(レンタルの常時稼働PC)が役に立ちます。最初は自分のPCを起動しておくだけでも始められます。

6. 本番は少額から(リスク管理が主役)

デモで十分に納得できたら、いよいよ本番。ただし失っても生活に困らない範囲のお金から始めます。最初から大きく賭けない。これは度胸の問題ではなく、設計の問題です。

本番でBotを守る「ブレーキ」をかならず入れておきます。

  • 1日の損失の上限を決める:そこまで負けたらその日は自動で止める
  • 負けた直後の取り返しを禁止する:人間がやりがちな「ムキになって倍張り」をBotにもさせない
  • 1回の取引で賭ける量を小さく固定する:一発で大きく減らない大きさにする

これらは難しい計算ではなく、「ここまで来たら止める」という線を先に引いておくだけです。勝つための工夫より、致命傷を負わないための工夫のほうが、生き残りには役立ちます。

リスク注記:自動売買は人間の弱点(寝坊・感情・取り返し狙い)を消せるのが強みですが、ルールが間違っていればその間違いを24時間休まず実行し続けます。本番に出す前に、止めるブレーキとデモ検証はかならずセットにしてください。

おまけ:自分のコードを「疑う」と強くなる

作ったルールやコードは、作った本人ほど穴に気づけません。やってみて効いたのは、第三者の視点(人でもAIでも)に「ここ、抜けてない?」とわざと突っ込ませることでした。

「この条件だと、こういう相場ですり抜ける」「ブレーキが厳しすぎて、まともな場面まで止めてしまう」——自分では見えなかった抜けが、けっこう出てきます。完璧を目指すより、抜けを一個ずつ潰していくほうが現実的に強くなります。AIに同じ作業をさせて答えを見比べる検証の感覚は、ChatGPT・Gemini・Claudeを比較した記事にも書きました。

まとめ:作る順番のおすすめ

迷ったら、この順で積むのが一番折れにくいです。

  1. 手法を決める(紙に日本語で書くだけでいい)
  2. Pine でチャートに描いて、目で形を確認する ← まずここがゴール
  3. 確認できた形を Python のコードにする
  4. 過去データでバックテストして、明らかにダメな物を落とす
  5. デモ口座でじっくり回す(数週間)
  6. 本番は少額+ブレーキ付きで、こわごわ始める

最初から完璧を目指さず、2まででいったん「自分のルールが見える」状態にしてしまうのが続けるコツです。そこまで来れば、残りは一つずつ足していくだけ。ツールが代わりにやってくれる部分は思った以上に多く、難しそうに見える所ほど「コピーして数字を変える」「ボタンを押す」で進めることが多いです。順番にやれば大丈夫。

何を使えばいいかは 道具の選び方の記事 に、全体の仕組みは 概要記事 にまとめています。

もう一度:本記事は作り方の手順の解説であり、投資の助言・勧誘ではありません。投資・自動売買は自己責任で、元本割れのリスクがあります。自動売買は損失も自動で出ます。かならずデモで検証し、本番は少額から、止めるブレーキを付けてください。 公開・共有する際は、口座番号・APIキー・本名などの固有情報を載せないように。