XM(XMTrading)で自動売買をプログラミングで実装する場合、主にMT4(MetaTrader 4)プラットフォームを使います。XMはMT4/MT5を公式サポートしており、自動売買ツールとして**EA(Expert Advisor)**を活用します。EAはMQL4(MetaQuotes Language 4)という言語でプログラミングされ、取引ルールを自動実行します。デモ口座でテスト可能で、プログラミング未経験者向けのリソースが豊富です。今回はプログラミング素人の私が基本からXM特有の設定までをステップバイステップで勉強していきます。
【免責事項】私は投資アドバイザーではありません。投資判断はご自身で行い、必要に応じてファイナンシャルアドバイザーに相談してください。この記事では自動売買プログラミングのコード公開もしていますが自身の勉強を目的としており、EAの動作保証や損失に対しても一切の責任を負いません。
1. XMでの自動売買の概要
- 対応プラットフォーム: MT4(主にMQL4使用)。MT5(MQL5)も可能ですが、初心者はMT4からがおすすめ。
- EAの役割: 事前設定したルール(例: 移動平均線クロスでエントリー)で自動売買。感情抜きの24時間運用が可能。
- XMのメリット: 自動売買に制限なし(禁止事項なし)。スタンダード/マイクロ口座で少額(100通貨)からスタート。VPS(仮想サーバー)無料提供でPCオフでも稼働。
- リスク: バックテスト必須。急変動時は損失拡大の可能性あり。余裕資金で運用を。
2. 勉強の始め方
私はプログラミング初心者ですので、基礎から実践までを3段階で進めまてみます。所要時間は1-2週間(1日1-2時間)で基本EAを作成可能できるらしいですが実際どうなのでしょうか。
ステップ | 内容 | 推奨時間 | 必要なツール/リソース |
---|---|---|---|
1. 環境構築 | XM口座開設 → MT4インストール → デモログイン。 | 1日 | XM公式サイト |
2. MQL4基礎学習 | 変数、関数、注文発行の基本を学ぶ。 | 3-5日 | 無料オンライン教程(後述)。MetaEditor(MT4内蔵エディタ)でコード編集。 |
3. EA作成&テスト | シンプルEA(例: MAクロス)を作成 → バックテスト → XMチャートで稼働。 | 5-7日 | Strategy Tester(MT4ツール)で過去データ検証。MQL5コミュニティでサンプルコード入手。 |
- 環境構築の詳細:
- XMサイトでデモ口座開設(メールアドレスで即完了)。
- MT4ダウンロード → インストール → XMサーバー選択してログイン。
- ツールバーから「MetaEditor」起動(F4キー)。ここでMQL4コードを書く。
3. MQL4プログラミングの入門知識
MQL4はC言語に似たシンプルな言語。EAの基本構造は以下の3つの関数で構成:
- init(): EA起動時の初期化(パラメータ設定)。
- start() (MT4) / OnTick() (更新版): 毎ティック(価格更新)で実行。売買ロジックを書く。
- deinit(): EA停止時の後処理。
初心者向けサンプルコード: 移動平均線(MA)クロスで買いエントリーするシンプルEA (これはOANDAの教程を基にした例。コピーしてMetaEditorでテスト可能。バックテストでEUR/USD、期間14のMA使用。)
mql4
//+------------------------------------------------------------------+
//| Simple MA Cross EA |
//+------------------------------------------------------------------+
#property strict
extern int FastMA = 5; // 短期MA期間
extern int SlowMA = 20; // 長期MA期間
extern double Lots = 0.01; // ロット数
extern int StopLoss = 50; // ストップロス(pips)
double fastMA, slowMA; // MA値格納変数
//+------------------------------------------------------------------+
//| EA初期化関数 |
//+------------------------------------------------------------------+
int init() {
return(0);
}
//+------------------------------------------------------------------+
//| メイン実行関数(毎ティック呼び出し) |
//+------------------------------------------------------------------+
int start() {
fastMA = iMA(NULL, 0, FastMA, 0, MODE_SMA, PRICE_CLOSE, 0); // 短期MA取得
slowMA = iMA(NULL, 0, SlowMA, 0, MODE_SMA, PRICE_CLOSE, 0); // 長期MA取得
// ゴールデンクロス(短期>長期)で買い
if (fastMA > slowMA && OrdersTotal() == 0) {
OrderSend(Symbol(), OP_BUY, Lots, Ask, 3, Ask - StopLoss * Point, Ask + 100 * Point, "Buy Order", 0, 0, clrGreen);
}
return(0);
}
//+------------------------------------------------------------------+
//| EA終了関数 |
//+------------------------------------------------------------------+
int deinit() {
return(0);
}
- コードの説明:
- extern: 外部パラメータ(EA設定画面で調整可能)。
- iMA(): 移動平均線を計算。
- OrderSend(): 注文発行(OP_BUY=買い、Ask=現在価格)。
- 勉強のヒント: このコードをMetaEditorでコンパイル(F7) → MT4チャートにドラッグ → バックテスト(Ctrl+R)で検証。エラー時はコメント(//)でデバッグ。
4. おすすめ勉強リソース
XM対応のものを優先。プログラミング未経験でも図解多め。
リソース名 | 内容 | レベル | リンク/入手方法 |
---|---|---|---|
MQL4公式ドキュメント | 関数リファレンス&基本チュートリアル。EA構造の解説。 | 初心者 | https://docs.mql4.com/ (例: 注文関数セクション)。 |
MQL4 Tutorial (無料動画/書籍) | ステップバイステップでEA作成。ランダムシグナル例あり。 | 初心者 | https://book.mql4.com/ または YouTube “MQL4 Tutorial”。 |
XM公式MT4ガイド | XM特化のEAインストール&設定。YouTubeで動画あり。 | 初心者 | XMサイト(https://www.xm.com/jp/trading-platforms/mt4) → “MT4徹底活用”動画。 |
Udemy: MQL4 Programming for Traders | 動画コース。自動売買の基礎から実践EA作成。 | 初心者-中級 | Udemyで検索(セール時1,000円前後)。 |
書籍: 世界一カンタンなFX自動売買EAプログラミングの教科書 | 図解満載の入門書。変数/注文の基礎。MT4完全対応。 | 初心者 | Amazon Kindle(約1,000円)。 |
MQL5コミュニティ | 無料EAサンプル&フォーラム。XMユーザー多め。 | 全レベル | https://www.mql5.com/ (MT4セクション)。XM公式YouTubeで探し方解説。 |
無料EA配布サイト | 勉強用サンプルEAダウンロード。バックテスト練習に。 | 初心者 | https://mt4-ea.com/ (Samurai EAなど)。 |
- 追加Tips: プログラミング経験ゼロなら、まず「変数宣言」と「if文」から。OverflowやMQL4フォーラムで検索。
5. XMでEAを稼働させる方法
- EAファイル(.ex4/.mq4)をMT4の「MQL4/Experts」フォルダにコピー → MT4再起動。
- チャート右クリック → 「エキスパートアドバイザー」 → EA選択 → パラメータ設定。
- ツールバー「自動売買」ボタン(緑色に)& チャート右上スマイルマーク確認。
- テスト: Strategy Testerで過去1年データ検証。リアル運用前はデモで1週間。
注意点と次の一手
- 禁止事項: XMはEA制限なしだが、違法ツール(アービトラージなど)は避けたほうがよい。利用規約確認しましょう。
- トラブルシュート: 自動売買止まる場合、サーバー接続確認(XMサポート24時間日本語対応)。
自作EAについて基本的な勉強をスタートしながらコードのエラー解決や、MA以外のロジック(RSIなど)についても勉強してみようと思います。