ChatGPTとMATLABで行うFXトレード分析の進め方 ― JFX編

FXトレード 勝利の秘訣 AIサービスと生成AI

FXで勝てるようになるには、トレードの自己分析をするのも1つの重要なステップです。しかし、何十回も行ったトレードを後から振り返って分析するのは、非常に面倒です。その面倒さ、難しさを解消する方法について解説します。

スポンサーリンク

トレード分析は面倒?難しい?

何ヶ月もトレードをしていると、トレード履歴データもそれなりの量になります。とくにスキャルピングをしている場合、1日に数十回ロットが入る場合もめずらしくなく、1ヶ月分をまとめると数百行から数千行になる場合もあります。

FX会社も独自にトレード分析レポートを提供していますが、その機能には限界があります。
例えば、JFXの場合「勝利へのあゆみ」というサイトで情報が提供されていますが、内容は大まかで、トレードの傾向を細かく分析することはできません。(出典JFX:「勝利へのあゆみ」 マニュアル)

JFX 勝利へのあゆみ

自分の取引傾向をさまざまな切り口から分析したい場合には、トレード履歴データを自分で加工する必要があります。

例えばこんな分析をしたいとおもったことはないでしょうか?

  • 複数ロットを入れた場合、Lot数や損益金額を1つのトレードとしてまとめたい
  • 通貨ペアごとに日・週・月単位で損益の傾向を分析したい
  • 勝ちトレードと負けトレードのpips数や保有時間の傾向を知りたい

こうしたデータを毎週Excelで手作業で加工して得るのは非常に大変です。
「ボタン1つで結果を出したい」と考えるのは自然な流れでしょう。

ただし、プログラミング経験がない人にとっては、ボタン1つで結果を出すプログラムを作ることが、非常に高いハードルに感じられるのも事実です。

そこで、いま注目されている生成AIが解決策となります。

ChatGPTを使えば初心者でもプログラミング可能

プログラミング初心者でも、ChatGPTを使えばプログラムを組むことができます。
「こうしたい」という要望を細かく分解し、日本語で表現すれば、ChatGPTがそれをプログラム言語に変換してくれるのです。

例えば:

  • 表Aのデータから、売買損益が0以上の行を抽出して表Bを作成
  • 行を月、列を通貨ペアに設定し、売買損益を集計したPivotテーブルを作成
  • yyyy/mm/dd HH:MM形式の取引時刻から日付だけを抽出
  • EntryDateとExitDateからLotの保有時間を計算
  • 表Aの列を「3,2,1」の順に並べ替え

このように、やりたい分析を個別のステップに分けてプログラムを書き、組み合わせていけばよいのです。昔のように「初心者向けのトレーニングを何十時間も学ばないと分析に取りかかれない」という時代ではなくなっています。

どのプログラミング言語を選ぶべきか?

さて、ChatGPTに助けを借りるにしても、どのプログラミング言語を選ぶかが問題です。FXトレード分析に使えるプログラミング言語の選択肢は次の3つです。

  1. Excel VBA
  2. Python
  3. MATLAB

それぞれの特徴を表に整理すると以下のようになります。お金をかけないで始められるという点では、ExcelかPythonに軍配が上がりますが、それぞれデメリットもあります。

Excelマクロ Python MATLAB
学習の難易度 書籍や動画は多い 書籍や動画は多い 情報は少なめ
利用コスト 無料 無料 有料($105)
セットアップのしやすさ 普段から使い慣れている 設定がかなり難解 インストーラーで簡単
プログラムのわかりやすさ 複雑になりがち やや複雑 解読しやすい
分析のしやすさ 高度な分析は機能的に難しい 高度な分析も可能だが扱いが難しい 高度な分析も追加機能次第で楽にできる
グラフ化のしやすさ 簡単なものなら可能。複雑なものは不可 複雑なグラフ化も可能だが設定が難しい 複雑なグラフ化もしやすい
扱えるデータ量 数十万件まで 事実上制限なし 事実上制限なし

Excel

インストールもされており、普段から使い慣れているので、利用開始までのハードルが低い点はメリットです。書籍や動画も多数存在して情報も入手しやすいです。
しかし、高度な処理を行おうとするとプログラムが複雑化し、後から解読しにくくなるほか、分析機能にも限界がある点がデメリットです。

Python

無料であること、利用者が多く、書籍や動画などを通じて入手できる情報が豊富なのはメリットです。
一方で、環境構築が難しく、高度な分析やグラフ化を行う際はプログラムが長くなり、あとから解読しにくくなる点がデメリットです。

MATLAB

有料(永続利用版で105ドル/約15,540円)ですが、インストールが容易でプログラムが短く済み、後から読みやすいのが特徴です。高度な分析やグラフ化も専用関数を使えば短いコードで実現できます。

この15,000円程度のコストを高いと考えるか、安いと考えるかは個人の考え方次第でしょう。

年間で100万~200万円を勝ち取るための投資と考えれば、安いといえるでしょう。
どうしても費用に抵抗がある場合は、1か月の試用期間や、制限付きの MATLAB Online を無料で利用する方法もあります。使ってみてから判断すればよいでしょう。

次の記事では、ChatGPTとMATLABを使って、JFXのトレード履歴データを分析するプログラムの書き方を紹介します。