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

 
comp:
そうすると、イベントによる計算の中断ができなくなります。

では、反対側を見てください。

チャート上に2つ目のインジケータを配置することで、人為的に平行移動させることができます。

そして、両方からGlobalVariableSetOnConditionに アクセスすることによって。

 
o_O:

では、反対側を見てください。

2つ目のインジケータをチャート上に置くことで、人為的に平行移動させることができます。

そして、両方からGlobalVariableSetOnConditionに アクセスすることによって。

理解できない。
 
comp:
理解できない。

2つ目のインジケータは、ChartEventからのイベントをカスタムでメインインジケータに送り、グローバル 変数の状態を例えばms単位の時間で変更するシグナです。

メインインジケータでこのイベントをキャッチして計算を開始し、さらにグローバル変数を見て、計算を開始したものと同じms時間を持っていることを確認します。

もし、その中の時間が変わっていたら、それは新しいイベントが来たということであり、現在の計算を中断することになる。

このように

---

または、単純にチャートイベントごとにgpのmsを変更し、メインインジケータでのみ制御することも可能です

一般に、2番目のインジケータは並列化されます。

 

こんにちは!初心者のためのちょっとしたヘルプです。OnBookEventイベントの扱いがわからないようです。

このイベントをonTick()から呼び出すと、すべてが動作します。onTick()が空の場合、何も動作しません。私は何も理解していません。OnBookEventはグラスに変化があったときに呼び出されます。つまり、それは別のイベントハンドラであり、基本的にonTick()がティックが発生したときに呼び出されるのと同じです。なぜうまくいかないのか?

このような仕組みになっています。さて、その仕組みですが、カップに変化があったときではなく、ティックが発生したときに「Anything」とプリントされます。例えば、入札数量が変化し、ある価格で、カップの変化に対するOnBookEventハンドラが呼ばれるはずですが、それは起こりません。onTick()が空のままだと、何も表示されないし。

int OnInit()

{

if ! MarketBookAdd("RTS-6.16")

{

Print("Error ",GetLastError() );

}

さもなくば

{

Print("Done")。

}

void OnDeinit(const int reason)

{

MarketBookRelease("RTS-6.16")。

}

void OnTick()

{

OnBookEvent(_Symbol)。

}

void OnBookEvent(const string &symbol)

{

MqlBookInfo book[]。

MarketBookGet("RTS-6.16", "book")。

if(ArraySize(book) == 0)

{

printf("Failed load market book price.理由: " + (文字列)GetLastError());

を返します。

}

Print("Anything")。

}

 
ただ、他の楽器で試したところ、すべてうまくいきました!!!!どうしてでしょう?rtsだけ動かない!!!!
 
問題は解決しました。
 

https://www.mql5.com/ru/docs/constants/structures/mqltraderequest ヘルプのエラー

SL & TP Modification

ストップロスやテイクプロフィットの水準を変更するための取引注文。4つのフィールドが必要です。

-アクション

-記号

-スレ

-せいちょう

-位置

フィールド の位置を追加しましたが、入力するフィールドの数は4つのままです。
Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура торгового запроса
Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура торгового запроса
  • www.mql5.com
Стандартные константы, перечисления и структуры / Структуры данных / Структура торгового запроса - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Alexey Viktorov:

ヘルプのエラー https://www.mql5.com/ru/docs/constants/structures/mqltraderequest

フィールド の位置を追加しましたが、入力するフィールドの数は4つのままです。
アレクセイ、ここに書いても意味がないんだ、サービスデスクにリクエストを送らなければならないんだ。同時にレーティングに+されます )
 
Alexey Volchanskiy:
アレクセイ、ここに書いても意味がないんだ、サービスデックにリクエストを送らなければならないんだ。同時にレーティングに+されます )
評価を追いかけるには歳を取りすぎました:)))直さないし、直す必要もない。
 
o_O:

あなたは、2番目の指標は、ChartEventからカスタムイベントとしてメインインジケータにあなたを送信する信号機を置く+ msの時間によって、例えば、グローバル 変数の状態を変更します。

メインインジケータでこのイベントをキャッチして計算を開始し、さらにグローバル変数を見て、計算を開始したものと同じms時間を持っていることを確認します。

もし、その中の時間が変わっていたら、それは新しいイベントが来たということであり、現在の計算を中断することになる。

このように

---

または、チャートイベントごとにgpでmsを変化させ、メインインジケータでのみ制御するシグナレータを使用することもできます

一般に、2番目のインジケータは並列化されます。

了解です、ありがとうございます。残念ながら、この解決策はExpert Advisor(計算を中断する必要がある)でのみ機能します。なぜなら、チャート上でインジケータを呼び出すと、並列のチャートキューが作成されず、同じイベントキューに入り、特定のチャートだけでなく、このシンボルのすべてのチャートに対して行われるからです。

インジケータをEX5-resourceではなく、MQ5-resourceとして配置するにはどうすればよいですか?