トレードデータをDBに入れよう講座【まとめページ】

この記事は自作EAは作れる前提。又は完成している前提の記事です。その上でPHP,DB,SQLのまとめをしています。
自作EAがまだの方は下記の記事からEAサンプルを閲覧できます。
エントリー後、決済条件まで追尾するRSIのEAサンプル(MQL4)

EA自作講座は下記の記事を参考にしてください。
自作EAを作るためのEA設計図のつくりかた(MQL4)

DBへ入れるトレードデータを決めよう

トレードデータと言っても、注文したデータを送るのか?約定したデータを送るのか?
はたまた、注文したデータと実際に約定したデータを両方いれるのか?
いろいろなパターンが考えられます。
今回僕が用意したサンプルでは自作のDBManagerを使ってしまっていてコピーでは実現できないため
トレードデータをデータベースに入れるコードのみ

新しくデータベースへ挿入するサンプルを作成しました。
データベースに接続して挿入、データ取得するサンプル

上記のサンプルは決済時のデータをデータベースへ挿入するものです。なので、注文時の待機決済注文(指値決済価格、逆指値決済価格)はデータベースに入れません。

今回は下記の10項目をデータベースへ挿入します。()内はデータベースのテーブルカラム名

  1. チケット番号(ticket)
  2. 通貨ペア(symbol)
  3. 買か売か(type)
  4. ロット数(lot)
  5. 約定価格(open_price)
  6. 決済価格(close_price)
  7. EA識別番号(magic_number)
  8. 約定した時間(open_time)
  9. 決済した時間(close_time)
  10. 決済損益(profit)

作成の流れ

まず扱う言語ですが、

  • MQL4
  • PHP
  • SQL

必要な知識

  • MQL4でEAの自作
  • ローカルでテストするためのPHP開発環境&ツールの準備
  • PHPからデータベース操作
  • 最低限のSQL言語
  • PHPMyAdminの使い方

データベースにトレードデータを入れると言ってもいくつかの工程を経ないといけません。

  • トレードデータを送るための自作EAの作成
  • MQLのWebRequest()の理解
  • PHPでのRequestの受け取り
  • 非同期通信の扱い
  • PHPからデータベースへ値を挿入
  • データの重複を防止

xamppのダウンロード&インストール
XAMPPのダウンロードとインストールのやり方【VERSION-7.2.26】
必要であればPHPの開発環境のインストール
PHPの開発を加速するECLIPSEのダウンロードのやり方【開発ツール】
決済処理の下にWebRequest()関数を使いPHPへトレードデータをPOSTする。
WebRequest()の使い方
WEBREQUEST()を使うときの注意点
この際ちゃんとデータが送れているかMLQ4のComment()関数で確認する。

PHPMyAdminを使いデータベースを作成する
PHPMyAdminの立ち上げからDB作成、テーブル作成のやり方【XAMPP】

データベースのカラムのデータ型についてはまた後日記事にしますので、
トレードデータをデータベースに入れるコードのみ
上記の記事にSQLが載ってますのでPHPMyAdmin内でSQLを使いサクッとDBを作成してください。

PHPを使いMQL4のWebRequest()関数で送られてきたデータをDBへ挿入する処理を記述する
データベースに接続して挿入、データ取得するサンプル

シェアする

  • このエントリーをはてなブックマークに追加

フォローする