*

ここが変だよMQL5 ~でも、ちょっとずつ良くなった(概要版)~

公開日: : MT5/MQL5 ,

【この記事は2017年の記事を更新したものです。】

Order, Positionの意味が変わってる

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

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

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

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

(ネッティングタイプでは)両建てができない、決済の関数がない

MQL4ではOrderCloseを使ってポジションを決済しましたが、MQL5では決済の関数がありません。

ではどうするかというと、反対ポジションをとって相殺する、という手を公式で使います。
(いや、意図は分かるんだよ。分かるんだけどもうちょっと何とかなっただろ~)

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

反対ポジションをとると自動的に相殺されてしまいます。しかも同じ通貨ペアのポジションを別のタイミングで複数建てると、
全て合体させられてしまいます。(ヘッジアカウントなら可)

その後、ヘッジアカウントとネッティングアカウントというものが導入され、ヘッジアカウントではMT4のようなポジションの両建て、部分決済ができるようになりました。

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

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

さすがにバージョンアップで実装されたようです。逆にオリジナル関数で代用していた人の場合、定義済みの関数としてバグを吐き出すので、ほんと大変ですよね。

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

それがないんですね~

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

(ネッティングの場合)オーダーコメントが上書きされる

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

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

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

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

その他

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


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

機能性ではMT5の方が上ですが、使いやすさというか慣れはまだMT4です。(いや、慣れろよって話か)

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

Message

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

CAPTCHA


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

関連記事

ここが凄いよMT5 ~たまにはいいところも褒めないと~

いつもMT5,MQL5の悪口ばかり書いているので、たまにはMT5の良いところも紹介したいと思いま

記事を読む

ここが変だよMT5 ~MT4ユーザーのためのちょっとためになる話~

ヘッジタイプとネッティングタイプによる仕様の大幅な差 MT5ではアカウントの種類にヘッジタイ

記事を読む

MT5のテスターではスプレッドは変更できないという事実

を知らない人が多くて、「このバックテストのスプレッドはいくつですか」という質問が来るので共有です。

記事を読む

ここが変だよMQL5 ~実装の話~

実装の問題 ディール、オーダー、ポジションの区別がついている人、 ヘッジ、ネッティングが分かっている

記事を読む

 
  • (↑広告です。このサイトの管理者の運営ではありません)

     


  • 横瀬兼元(ペンネーム)です。

    プロフィール
    物を買わせようとする偽者がいるらしいのでご注意ください。
    ツイッター始めました(イマサラー)
    https://twitter.com/FxantennaC
    (埋め込みするとページ表示が極端に遅くなるので、リンクでご容赦を)


Translate »
PAGE TOP ↑