FXやその他投資についてのつれづれです
× [PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
このブログの目的のひとつである自分でEAを作るに向けての、MQL研究です。
ちょこちょこツール用のEAを作っていましたけど、実はMQLのことがさっぱりなのです(*'-') 何から調べようかなぁ・・・と考えて、とりあえずトレード関数から調べてみようと思い立ちました EA上で売買注文を出す関数は決まっていて OrderSend() というので出す模様です 関数の細かい仕様を見てみましょうか 復帰値:成功の場合はチケット番号 失敗の場合は-1 つまり、0以上なら、オーダーは成功というわけですね(・∀・) パラメータ string symbol:売買する通貨ペア これはEAを稼動しているときに使ってる通貨が一般的でしょうからSymbol()関数を使えばよさそうです int cmd:取引タイプ 成行注文とか、指値注文とかを指定するみたいです。 どんなものを指定するのかは、検証用のEA作ったのでその中でw double volume:ロット数 説明するまでもないですかね。ちなみにMQLでは0.1ロットで1万通貨になります double price:オープン価格 売買するときの値段です。成行ではBidやAskなどの固定変数を使えます int slippage:スリップページ FX会社で売買するときと同じですね。スリップを許すPipを指定です double stoploss:ストップロス値 損切りするときの値段です double takeprofit:リミット値 利確するときの値段です。上のストップロス値と組み合わせれば Ifdone注文やif-OCO注文が可能になりますね string comment=NULL:コメント 注文を出すときに、コメントがつけられます int magic=0:マジックナンバー 複数のEAで注文を出したときに、どのEAからを区別するための値です。今回は気にしない方向でw datetime expiration:有効期限 注文の有効期限らしいですが、datetime型と面倒な型なので私は見なかったことにしておきますww 必要になりそうなら、そのときに調べるということでw color Color=CLR_NONE:チャート上の矢印の色 これも意味不明(´Д`;)ヾ さてさて、関数を調べたら、とりあえず実験してみましょうか 今回の実験EAはこれ→ダウンロード(mq4) で、実験結果を編集したのがこれ→ダウンロード(csv) 動きとしては、 1.開始直後に成行、指値、逆指値で注文をだす→注文の状態を表示 2.指値、逆指値が通ったくらいのタイミングで注文の状態を表示 3.EAが終わるくらいで指値や逆指値で利確や損切りされた注文の状態を表示 の3点です(*'-') 結果のCSVでは、注文順に並んでおります。注文番号#1では成行の売り注文ですがそれを1.2.3.の順番で並べました ざっと結果を見てみると 注文番号#4では指値の買い注文でしたが、オープン日時とトレードタイプが変更されています。つまり注文を出した時点と注文が約定されたときで値が変わるわけですね。つまり成行以外の注文を出した場合、トレードタイプが変化したら、注文が通ったとみなしてよさそうです 注文番号#7は成行注文で利確の注文も同時に出したやつですが、利確のときにクローズ日時が入っています。つまりここに値が入ればこの注文は完結してると見てよさそうです 注文番号#11は上記#4と#7が見事に組み合わさっていますね。 出した注文がどうなってるかというのをEA上で知りたいときは 新規注文:トレードタイプがSellやBuyになっているか 決済注文:クローズ日時が入っているか という感じでしょうか とりあえず、今日はここまででw 次は、OrderCloseとかの組み合わせで調べたいと思います(*'-') PR |
カレンダー
カウンター
プロフィール
投資は自己責任・自己判断で実施するようお願いいたします。
ここの情報を見て損失が発生しても責任は負えませんのでご注意してください
HN:
Aki
性別:
男性
最新コメント
[06/06 fxjol]
[02/18 FXに人生を賭ける男]
[01/01 Aki]
[01/01 Aki]
[12/31 FXに人生を賭ける男]
最新記事
ブログ内検索
最新トラックバック
アクセス解析
|