お金が稼げる自動売買ツールを自作してみる!その4

      2017/10/17

お金が稼げる自動売買ツールを自作してみる!その4

※自己責任でお願いします。損失や損害については責任を負いかねます。

 

今回の記事でExcelファイルにXM MetaTrader5の相場データを読み込めるように設定します(*’▽’)

 

けっこう長い記事になっていますがひとつひとつ難しくないように説明してあるので見た目よりもスムーズにできると思います!(^^)!

 

田中はこのWebサイトを参考にして自動売買ツールを作ろうと思います。

参考にするサイトはこちら⇒株・為替・FX・N225自動売買、自動取引システムの作り方・自作方法

 

 

 

Excelに相場データを流す準備

 

私は右も左も分からない状態から自動売買ツールを作成しているので参考にしているWebサイトがあります(*’▽’)

 

参考にしているWebサイト⇒株・為替・FX・N225自動売買、自動取引システムの作り方・自作方法

 

大体の内容は問題ありませんが参考サイトの通りに作って進めると…動かない!!

 

そんな状況に多々なります(^_^;)

 

なので私のブログでは参考サイトとは多少違う部分がありますのでご注意ください(*’▽’)

 

 

XM MetaTraderからデータを読み込む

 

XM MetaTrader5のデータを読み込むためにいくつか準備をしましょう(*’▽’)

 

MQL5に登録する

 

データの読み込みに「DDE」という機能を使うのですがMetaTrader5では「DDE」がサポートされていないため自分で設定が必要になります!!

 

そこでMQL5というサイトに登録して必要となるファイルをダウンロードします(*’▽’)

 

※ダウンロードしたファイルはウイルスが混じっていないか必ずスキャンしましょう!!

 

MQL5にアクセス⇒https://www.mql5.com/

 

画面右上の新規登録をクリックして登録してください(*’▽’)

 

登録が完了したら必要なファイルをダウンロードしに行きます(^_^)

 

必要なファイルをダウンロードする

 

dde_example.mq5」と「dde-server-mfc-application.zip」が必要なのでダウンロードします(*’▽’)

 

このサイトからファイルを2つ入手⇒https://www.mql5.com/en/code/1246

 

 

dde_example.mq5」をXM MetaTrader5のデータフォルダに貼り付ける

 

XM MetaTrader5を開いて次のように進めて下さい(*’▽’)

 

「ファイルメニュー」→「データフォルダを開く」

 

 

■「MQL5」→「Experts」→「dde_example.mq5」の順に進みます。

 

「MQL5」

 

「Experts」

 

「Experts」フォルダが開けたら先ほどダウンロードした「dde_example.mq5」を「Experts」フォルダに貼り付けます(*’▽’)

 

「dde-server-mfc-application.zip」の解凍と実行

 

次にアプリを起動させます。

 

アプリは先ほどダウンロードした「dde-server-mfc-application.zip」の中にあります。

 

ZIPで圧縮されているので解凍して展開して下さい。展開先はどこでもいいのですが利便性を考えるとXM MetaTrader5のショートカットアイコンの近くがいいかと思います(*’▽’)

 

dde-server-mfc-application.zip」を解凍すると中に…、

 

解凍が済んだらアプリを実行します。「DDE Server.exe」を実行して下さい…、

 

DDE Server.exe」を実行すると、空っぽのプログラムが開かれます(*’▽’)

 

DDE_Example.mq5」をメタエディターで開く

 

「ファイル」→「データフォルダを開く」

 

「MQL5」→「Experts」

 

「dde_example.mq5」をダブルクリックして「メタエディタ」を開きます(*’▽’)

 

※メタエディタが英語表記の場合

 

もしもメタエディタが英語で表記されていたら日本語に変換しておきましょう(*’▽’)

 

メタエディタの上部メニューから~

 

「View」→「Languages」→「Japanese」と選択します(*’▽’)

 

言語の選択が終わったら「メタエディタを再起動」します。すると英語表記が日本語に変更されていると思います(^^♪

 

DDE_Example.mq5」に通貨ペアを追加する

 

void OnTimer() //ここの関数に追加する
{
//— filling an array MA[] with current values of iMA
//— Copying 100 elements
CopyBuffer(MA_handle,0,0,100,MA);
ArraySetAsSeries(MA,true);

// Check & Add Item DDE
if(!CheckItem(“A”,”B”))
{
if(!AddItem(“A”,”B”)) return;
}

if(!CheckItem(“COMPANY”,”Value”)) AddItem(“COMPANY”,”Value”);
if(!CheckItem(“TIME”,”Value”)) AddItem(“TIME”,”Value”);

if(!CheckItem(“BID”,”USDJPY”)) AddItem(“BID”,”USDJPY”);
if(!CheckItem(“ASK”,”USDJPY”)) AddItem(“ASK”,”USDJPY”);

MqlTick tick;
SymbolInfoTick(“USDJPY”, tick);
SetItem(“BID”,”USDJPY”,DoubleToString(tick.bid,5));
SetItem(“ASK”,”USDJPY”,DoubleToString(tick.ask,5));

 

上記のピンク色のコード部分を「void OnTimer()」関数に追加します。

 

DDE_Example.mq5」をメタエディターでコンパイル

 

通貨ペアの記述が終わったら「DDE_Example.mq5」を開いた状態で「コンパイルボタン」をクリックします。

 

コンパイルは以上です!簡単ですね(笑)

 

 

…なんにも変化がない(*’▽’)??

 

「dde_example.mq5」を「メタエディタ」でコンパイルした後にいくつか設定を行う必要があります(^_^)

 

「DDE」のアプリはXM MetaTrader5に標準でサポートされていない「外部アプリ」です!

 

なのでXM MetaTrader5の設定で外部アプリと連動する許可を与える必要があります(*’▽’)

 

次の順番に進めてみTましょう(*’▽’)

「XM MetaTrader5」「ツール」「オプション」「エキスパートアドバイザ」「DLLの使用を許可する」にチェック!!

 

最後の仕上げに入りますよ~!(^^)!

 

忘れてないとは思いますが…先ほど「dde_example.mq5」を「メタエディタ」で「コンパイル」しています(*’▽’)

 

コンパイルされた「dde_example.mq5」は「XM MetaTrader5」の「エキスパートアドバイザ(EA)」に追加されています!

 

エキスパートアドバイザ(EA)にある「dde_example.mq5」を任意のチャート上にドラッグ&ドロップします(*’▽’)

 

すると…変化あり!!!!

 

DDEサーバーとXM MetaTrader5のアプリが連携に成功しました!(^^)!

 

 

 

Excelファイルに数式を入力する

 

XM MetaTrader5のデータをExcelファイルに読み込む準備は整いました(*’▽’)

 

実際にデータを読み込んでみまよう!

 

①B2のセルを選択し、②の入力窓に「= MT4DDE|BID!USDJPY」と入力します(*’▽’)

 

すると画像のようにB2のセルにXM MetaTrader5とリンクした売値がリアルタイムで読み込まれていきます!!

 

同じ様に買値にも数式を入力しましょう(*’▽’)

 

①C2のセルを選択し、②の入力窓に「= MT4DDE|ASK!USDJPY」と入力します(*’▽’)

 

まとめ

 

だいぶ長くなっちゃいましたね(^_^;)

 

次回からは今回読み込んだXM MetaTrader5のデータを自動でExcelに更新しながら記録していくプログラムをVBAで作り上げていきます(*’▽’)

 

 - 自動売買ツール(雑記、自作)

%d人のブロガーが「いいね」をつけました。