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

 

この脚本の作者は、私の理解では、ロシアの人ではないので、残念ながら回答はありません。

だから、ここで助けを求めようと思うんです。

警告を修正する方法 :

型変換によるデータ消失の可能

このスクリプトでは

https://www.mql5.com/ru/articles/download/5204/scraperbot04.mq5

 
erotin:

この脚本の作者は、私の理解では、ロシアの人ではないので、残念ながら回答はありません。

だから、ここで助けを求めようと思うんです。

警告を修正する方法 :

型変換によるデータ消失の可能

このスクリプトでは

https://www.mql5.com/ru/articles/download/5204/scraperbot04.mq5

お試しください

f_US=(float)StringToDouble(StringSubstr(CharArrayToString(ch_Buffer),i,8));
 


mql5では、履歴にポジションはなく、ディールのみが存在するという理解で合っていますか?HistoryDealsTotal()の存在とHistoryPositionsTotal()の不在から判断。

では、なぜ端末の履歴タブで、「ポジション」を選択すると履歴に表示されるのでしょうか?

この履歴にあるポジションの終値を取得するにはどうすればよいですか?


 
secret:

mql5では、履歴にポジションはなく、ディールのみが存在するという理解で合っていますか?HistoryDealsTotal()があり、HistoryPositionsTotal()がないことから判断。

はい。

では、なぜ端末の履歴タブで、「ポジション」を選択すると履歴に表示されるのでしょうか?

これは、歴史を位置づけとして解釈する試みの一つです。私見ですが、一番成功したとは言えません。

この履歴にあるポジションの終値を取得するにはどうすればよいですか?

私は生け垣の上で次のようなことを行っています。

#property script_show_inputs

#include <MT4Orders.mqh> // https://www.mql5.com/en/code/16006

input TICKET_TYPE PositionTicket = 0;

void OnStart()
{
  if (OrderSelect(PositionTicket, SELECT_BY_TICKET))
    OrderPrint();
}
 
Alekseu Fedotov:

お試しください

ありがとうございました。
 
fxsaber はい。

オープントレードの利益を印刷するには、1つのリストとチケットで作業する必要があり、同じでクローズドなトレードの利益を印刷するには、別のリストと別のチケットで作業しなければならないことがわかりましたか?

 
secret:

オープントレードの利益を印刷するには、1つのリストとチケットで作業しなければならず、同じだがクローズドトレードの利益を印刷するには、別のリストと別のチケットで作業しなければならないことが判明しました。

質問の意味がわからない。

 
secret:

オープントレードの利益を印刷するには、1つのリストとチケットで作業する必要があり、同じでクローズドなトレードの利益を印刷するには、別のリストと別のチケットで作業しなければならないことがわかりましたか?

各注文と各取引はそれぞれ独自のチケットを持っていますが、ORDER_POSITION_ID と DEAL_POSITION_ID も持っています。これが、あるポジションに属しているかどうかを判断する材料になります。

 
secret:

この話の中で、ポジションの終値はどのようにして求めるのですか?

また、この終値は、ヘッジでもDigitsより小数点以下の桁数が多くなることがあることをよく認識しておく必要があります。


また、ポジションクローズ時のシンボルの価格に近いものである必要はありません。

開発者は、MT4の歴史を類推したかったのだろうが、失敗した。

Terminalで取引履歴を見たいときは、GUI拡張 機能を使っています。MT4と同様に履歴のポジションを表示します。終値は終値に対応する、など

したがって、歴史的な位置づけは、さまざまな解釈を与えることができる慣習なのです。
 
fxsaber:

質問の意味がわからない。

取引の利益を計算するためには、特に 値が必要です。取引が開始されている間、ポジションチケットのポジションリストからオープンプライスを取得する必要があります。そして、取引が終了したら、同じオープンプライスを別のリスト(ポジションではなく、取引)から取り出して、別のチケットにしなければならないのです。そうだろ?

理由: