エラー、バグ、質問 - ページ 515

 
スプレッドを考慮した一方向の注文の平均ポジションの合計を計算する式に興味があるのですが。残念ながら、私の検索では見つかりませんでした。ありがとうございました。
 
Konstantin83:
質問:MQL5のマニュアルは、どのセクションからchmファイルやpdfファイルとしてダウンロードできるのですか?リンク https://www.mql5.com/files/docs/mql5_russian.chm はうまくいくのですが、どのセクションからダウンロードすればいいのでしょうか?以前は「ドキュメント」の項目からでしたが、現在はオンラインドキュメントのみとなっています。

Webサイトの「ドキュメント」(https://www.mql5.com/ru/docs)から利用できるリンクはないのでしょうか?


 
Rosh:
トランザクションはその瞬間にのみ有効なので、何も変更/ゼロにすることはできません。マジックの注文で ポジションを閉じるということでしょうか?手動取引では、注文だけでなく、注文の根拠となる取引にもマジックを割り当てない。

配列は以下の通りです。

  1. Expert Advisorが0以外のマジックナンバーで発注した保留中の注文
  2. 注文がトリガーされ、ポジションがオープンされました。
  3. 手動で閉じた場合
質問:このクローズド・トレードは、マジックナンバーが0でないのか、それとも0になるのでしょうか?
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров - Документация по MQL5
 
Dima_S:

配列は以下の通りです。

  1. Expert Advisorが0以外のマジックナンバーで発注した保留中の注文
  2. 注文がトリガーされ、ポジションがオープンされました。
  3. この位置は手動で閉じられました
質問:このクローズド・トレードは、マジックナンバーが0でないのか、それとも0になるのでしょうか?

答え:トレードの特性

取引は、取引注文を含む注文に 基づき、取引操作が 行われた事実を反映したものである。各案件は、その情報を取得するためのプロパティで記述されています。プロパティの値を読み取るには、HistoryDealGet...()型の関数を使用 、対応する列挙型から値を返します

HistoryDealGetInteger()関数の場合

enum_deal_property_integer

識別子

商品説明

タイプ

DEAL_ORDER

取引成立の根拠となった注文

DEAL_TIME(ディールタイム

取引実行時間

時分

DEAL_TYPE

案件の種類

ENUM_DEAL_TYPE

DEAL_ENTRY

ディール方向 - 市場参入、市場撤退または反転

enum_deal_entry

DEAL_MAGIC

案件のマジックナンバー( ORDER_MAGIC参照)

deal_position_id

この案件が関与した、オープニング、変更、クロージングのポジションの識別子。 各ポジションには一意の識別子があり、その識別子はポジションの有効期間中にその商品で行われたすべての取引に割り当てられます。

 

これも試行されています。

deal_order = ( long )HistoryDealGetInteger( deal_ticket, DEAL_ORDER );
deal_magic = ( ulong )HistoryOrderGetInteger( deal_order, ORDER_MAGIC );
その結果、NULL値も返される。
 
Interesting:

私の理解では、特定のトランザクションのプロパティを取得する前に、 -HistoryDealSelectを 使用してそれを選択する必要があります。

ヒストリーディールセレクト

履歴の中の案件を選択し、適切な機能でさらにアクセスできるようにします。 関数が正常に終了した場合、true を返す。関数が失敗した場合、false を返す。エラーの情報を得るには、GetLastError() 関数を呼び出す必要があります。

HistoryDealSelect()
ユーロング・チケット//チケット・オブ・ザ・ディール
);

パラメータ

チケット

[チケット

戻り値

成功した場合はtrueを、そうでない場合はfalseを返す。

なかなかうまくいかないんですね。

また、HistoryDealGetTicketは、案件を選択します。

 
Dima_S:

なかなかうまくいかないんですね。

また、HistoryDealGetTicketは、案件を選択します。

いや、ちゃんとやってるじゃないか。ただ、手動で注文を設定する(取引を行う)場合、Magicは設定されない(デフォルト=0)。これは、EAが自分の取引を他のすべての取引と区別できるようにするために設計されているものです。ポジションに対するすべての操作、EAとマニュアルをリンクさせたい場合は、POSITION_IDENTIFIERを 使用してください。

 
Valmars:

つまり、この一連の操作で、ということですね。

  1. Expert Advisorが0以外のマジックナンバーで 発注した保留中の注文
  2. 注文がトリガーされ、ポジションがオープンされました。
  3. この位置は手動で閉じた

その結果、履歴のマジックナンバーがゼロになり、どうにもならなくなるのでは?

 
Dima_S:

つまり、この一連の操作で、ということですね。

  1. Expert Advisorが0以外のマジックナンバーで 発注した保留中の注文
  2. 注文がトリガーされ、ポジションがオープンされました。
  3. この位置は手動で閉じた

その結果、履歴のマジックナンバーが0になり、どうしようもないのでは?


ディールの魔力は、それが実行された結果、オーダーの魔力によって決定される。しかし、手動で取引(注文)実行のリクエストを送る場合、マジックを設定することはできるのでしょうか?そう、出来上がった案件は、履歴のマジックナンバーがゼロになるのだ。得ることができ、0になる(魔法陣が設定されていないことを意味する)。

もしかして、話が違う?ご指定の順序では、2つの取引があり、最初の取引はトリガーされ、2番目の取引-ポジションが手動で閉じられたとき、そのマジックナンバーは0になります。
 
Valmars:

取引の魔力は、それを実行させた注文の魔力によって決定される。そして手動で取引(注文)のリクエストを送ることで、マジックを設定することができるのでしょうか?そう、出来上がった案件は、履歴のマジックナンバーがゼロになるのです。得ることができ、0になる(魔法陣が設定されていないことを意味する)。

もしかして、話が違う?あなたが示したシーケンスでは、2つの取引があり、最初の注文がトリガーされ、注文にマジックナンバーが設定された取引と、2番目の取引-ポジションが 手動で閉じられた ときに、そのマジックナンバーは0になります。
位置識別子を使えということですか?