初心者の方からの質問 MQL5 MT5 MetaTrader 5 - ページ 1052

 
Igor Makanu:

代わりに、https://www.mql5.com/ru/code/16006 を開きます。

@fxsaber の 実装を見てみましょう。

または、上記のライブラリを接続し、MT4からMT5にコードを転送するだけで、99%の場合、何も調整する必要がなく、すべてがMT4と同じように動作します。

そして、その知識を無駄にしないように...。
 
Artyom Trishkin:
そして、知識の足し算ができないように...。

知識?それはTSやトレーダーの育成に必要な知識ではありませんよ

ハードディスク→API→自分のプログラムを制御するために、自分用のドライバを書いたりしませんよね?プラットフォームとプログラミング言語の機能を利用するだけで、2クリック(数行)で以下のものが得られます。

MQL5では、オーダーの扱いが非常に面倒 でつまらないのは事実です。

注文の出し方、ステータスの 確認方法、価格と終値の確認方法(CTradeについては知っていますし、ソースコードも一部公開しています)、これらは取引プラットフォームが2クリックで行うべき基本的なことで、何の問題も発生しないはずです。

SZZY:MQL5でiTime()、IClose()が追加されてから5年経ちますが・・・。というのがフォローで、取引商品の履歴にアクセスすることも、2クリックで発注することもできない取引プラットフォームで、最初の1年間は、取引商品の履歴を2クリックで読めるという「奇跡の実装」がコドベース全体に溢れました......。なるほど、ハチャメチャな話題ですね。

 
Igor Makanu:

TSの開発にもトレーダーにも必要ない知識です。

まさにその通りです。ストラテジーの開発やトレーダーとして必要な知識ではありません。同様に、mql4の知識も必要ありません。

それがプログラマーに必要なことなのです。そして、自分が何をしているのかを理解し、得られた結果を期待されるものと照らし合わせることができる場合にのみ、このようなことが可能になります。

少し前に、ある人のEAを編集することになりました。TORによると、ポジションはある瞬間にBreakevenでクローズされるべきものなのです。実際には、Expert Advisorはポジションを開き、すぐに閉じて、新しいポジションを設定し、ルールに従って閉じました。

この混乱を数時間見ていた私は、Expert Advisorを 一から書き直す ことを提案しました。Expert Advisorではなかったのですか?

 
Alexey Viktorov:

この混乱を数時間見て、私はExpert Advisorを 一から書き直す ことを提案しました。Expert Advisorではなかったのですか?

間違いなく私のものです!)))))- 私は少なくとも1ヶ月は自分のコードをメンテナンスしますが、通常、ToRに多少の矛盾があっても、すべてが最初に正しく動作しますが、これは提出物ではなく、進行中の作業なのです。私はよく他人のコードを編集しますが、それは別の話であり、非常に時間がかかり、結果は未知数です。

低レベルのプログラミングは、いわば "小さな腸で掘るために "魅了された場合 - 先に行く、開発者からの標準ライブラリCTradeがあり、それはユーザーのために必要な最小値を行う必要があります。

 
Igor Makanu:

間違いなく私のものです!)))))- 私は少なくとも1ヶ月は自分のコードをメンテナンスしますが、通常、ToRに多少の矛盾があっても、すべてが最初に正しく動作しますが、これは提出物ではなく、進行中の作業なのです。私はよく他人のコードを編集しますが、それは別の話であり、非常に時間がかかり、結果は未知数です。

低レベルのプログラミングは、いわば "小さな腸で掘るために "魅了された場合 - 先に行く、開発者からの標準ライブラリCTradeがあり、それはユーザーのために必要な最小値を行う必要があります。

この奇跡のコードの持ち主も、その作者も、ポジションが開いてから閉じるというような微妙なことは知らなかったのだ。だからクレームがないのです。

全般的には賛成です。開発者によっては、マウスをまったく捕獲しない人もいます。そして、わざとバグを作り、ある人物の発言によると、このバグを捕まえるために拷問を受けるのだそうだ。今は「金を刈れ」というような命令を一つも出してくれません。プログラミングの知識は必要ありません。"王 "が"○○"に手を出すのは筋違いだ。注文して○○する」そんな感じですね。

 
Alexey Viktorov: この奇跡のコードの持ち主も、その作者も、ポジションが開いてから閉じるという微妙なタイミングに気づいていなかったのだ。私も同感です。ネズミが全然捕まらない。バグをわざと作るが、あるキャラクターが言うように、バグを捕まえるのに疲れてしまうのだ。今は「金を刈れ」というような命令を一つも出してくれません。プログラミングの知識は必要ありません。"王 "が"○○"に手を出すのは筋違いだ。注文して○○する」そんな感じですね。

私が理解する限り、我々はMQL5のいくつかのコードについて話しているのですか?- 私はその言語で公開コードを書いたことはなく、既成のソリューションしか使っていません。

もしあなたがMQLのサンドボックスから抜け出すことができたなら、GitHubを覗いてみてください。

 
Vladimir Karputov:

直接的な類似はありません。ポジションは取引で構成されています。正確なポジションデータを得たい場合は、まず取引履歴からポジションを構築し直す必要があります。

ですから、"ディール "という概念で仕事をしたほうがいいんです。

一般に、実装は「なぜ?」という問いに対する答えに大きく依存します。つまり、まず自分が何をしたいのか、なぜしたいのかを正確に記述することです。

取引の利益をpipsで取得すること。MT4ではこのようにしました。

( OrderClosePrice() - OrderOpenPrice() )/Point;
 
secret:

取引の利益をpipsで取得します。MT4ではこのようにしました。

取引で利益を得ることはできません。トレードは可能です。

ENUM_DEAL_TYPE-取引の 種類

ENUM_DEAL_TYPE

識別子

商品説明

DEAL_TYPE_BUY

購入

DEAL_TYPE_SELL販売する

***


クローズドポジションの情報を取得する必要があります(完全なポジションは少なくとも2つの取引で構成されています:エントリーとエグジット)。そのためには

  • 取引履歴からポジションを組み立て、その完全性をチェックします(ポジションは取引から組み立てることができることを思い出してください) - 取引のDEAL_POSITION_IDプロパティを使用します。
ここでのコントロールワードは、「取引履歴からポジションを収集し、その完全性を確認する」です。
 
Vladimir Karputov:

なるほど。ありがとうございました)MT5で非常に奇妙な用語がある。

開発者はなぜ歴史上、既成のポジション 物件を作らなかったのでしょうね。MT4ではそうでした。

 
secret:

なるほど。ありがとうございました)MT5で非常に奇妙な用語がある。

開発者はなぜ歴史上、既成のポジション 物件を作らなかったのでしょうね。MT4ではそうでした。

そうしてくれたことは、とても良いことだと思います。ポジションチェンジの全履歴にアクセスできる。4では、すべてが順番に積み重ねられています。そして、令状は単なる実行命令である。一方、5では、オーダーディールポジションです。
理由: