*

ここが変だよMQL5

公開日: : FX自動売買開発 , , ,

MT5を久しぶりにちょっといじってみたので、所見(愚痴)を書かせてください。

ここが変だよMQL5

1.OrdersTotal()が意味が変わってる

MT4では何かと御世話になるOrdersTotalですが、MT5ではバグ屋さんです。
類似の関数にPositionsTotalというものができているのですが、
MQL5では約定したポジションと予約注文が分かれています。

Order~ Position~系は完全に関数が分離しています。

これを知らずにMQL4と同じようにコーディングすると痛い目を見ます。(見ました)

しかもフォーラムによると、メタクオーツの公式サイトからダウンロードしたMT5だけバグる模様です。
(勘弁してください)

2.両建てができない、決済の関数がない

MQL4ではOrderCloseを使ってポジションを決済しましたが、MQL5では決済の関数がありません。
ではどうするかというと、反対ポジションをとって相殺する、という手を公式で使います。
(いや、意図は分かるんだよ。分かるんだけどもうちょっと何とかなっただろ~)

また、この仕様のせいで両建てはできません。

反対ポジションをとると自動的に相殺されてしまいます。
どう頑張っても見かけ上の両建てはMT5では無理です。

しかも同じ通貨ペアのポジションを別のタイミングで複数建てると、
全て合体させられてしまいます。(トラリピ、グリッドトレードもアウト)

3.Open[],Close[],iOpen(),iCloseが使えない

MQL4では始値、終値、高値、安値を取得する関数がありましたが、
MQL5ではありません。

「いや、でも名前が変わっても似たような関数があるんでしょ?」
と思うのが普通だと思います。

それがないんですね~

MQL5では、
自分で配列を宣言して、配列の向きを変えて、配列に値を入れないと
始値~安値を取得できない!

4.オーダーコメントが上書きされる

同じ通貨ペアでポジションを新規にとると、すでに保有しているポジションのチケットナンバーでロットだけ増加します。
同じように、もしEAにコメント付きでオーダーを送信させて、そのあと裁量で同じ通貨ペアのオーダーをすると、
オーダーコメントが上書きされてしまいます。

コメントでオーダーを管理するというのは、安定性に欠けるので避けるべきではありますが、
それでも複雑な開発要件の場合、どうしても使用せざるをえないことがあります。

しかし、MT5ではコメントがリアルタイムで変化する可能性があるので、
コメントを使ったプログラミングは結構穴になる可能性があります。

(見かけ上は古いコメントが消滅したように見えますが、中では残っているようです。)

まとめ

ところどころ良くなっているところはもちろんあるのですが、
その他にも
・MT5を複数インストールフォルダにコピーするとEAの紐づけがバグる
・特定の条件でコンパイルしてもEAが初期化されないバグ
・そもそも対応業者が少ない
・ヒストリーデータがいじれない(import,export)
・旧式のOrderSendの廃止->構造体に
・コンパイルしたときにエラーが一番上に来ない
・決済後のトレードのコメントを表示できない


・・・
など細かい点をあげると、どんどん悪い方に目が行ってしまいます。

機能性ではMT5の方が上ですが、安定性はまだMT4ですね。

Message

メールアドレスが公開されることはありません。

このコメントはWEBに公開されるので、問い合わせ等はメールでお願いします。

関連記事

MT4チャート上で動画を表示する

MT4にはチャート上に画像を表示させる機能があります。 しかし、動画を表示させる機能はありません。

記事を読む

MQL4とMQL5の違い(更新中)

・OrdersTotalの扱い MQL4でのOrdersTotalはMQL5ではPositions

記事を読む

【MQL4】外部ソフトなしで稼働するコピートレードツールを作る。その①

MT4で自動売買ソフトを稼働させるトレーダーには、ときとしてトレードを別のMT4にコピーしたい場合が

記事を読む

第20回:複数のポジションを識別・判別する

口座内の異なる通貨ペア、マジックナンバーのポジションを区別する MT4では同時に異なる種類のポジシ

記事を読む

EAのデコンパイルの実際とその対策

デコンパイルというのは実行ファイルからソースコードファイルを復元することで、デコードとかリバースエン

記事を読む

 
  • ブログ管理人の横瀬兼元(ペンネーム)です。

    "FX"の自動売買システムに興味がある方はinfo@aiforex.infoにご連絡ください。
    担当の方が対応します

    トレード成績はこのブログに掲載しています。


    株、仮想通貨、それ以外の私に対するご連絡は
    infoあっとfxantenna.com
    まで

ライトコインLTCのアービトラージ取引結果 binance vs poloniex

今回はライトコインのアービトラージ結果です。 最初はレート差1USD

仮想通貨アービトラージに取引所間の送金は必ずしも必要ではない

ここまで話を進めてきていまさら~な感じもするのですが、そもそものところ

BCH(ビットコインキャッシュ)のアービトラージの取引結果(Binance vs Poloniex)

今回はビットコインキャッシュのアービトラージの取引結果です。

ETH(イーサリアム)のアービトラージの取引結果(Binance vs Poloniex)

前回まででアルトコインのアービトラージの作り方や背景について説明しまし

APIを使ったアルトコインの自動アービトラージ

国内の取引所ではAPI取引でビットコイン以外をトレードできないため、ア

→もっと見る

PAGE TOP ↑