カスタムシンボル。エラー、バグ、質問、提案。 - ページ 24

 
https://www.mql5.com/ru/forum/328061 誰か助けてください。
 

バグ26。


ティックとバーの履歴を持つカスタムシンボルを作成 しました。

CTRL+Uで "Tick price "プロパティの値を変更しました。

ティックとバーの履歴が消えてしまった。同時にまだ持っています。ターミナルを再起動しても改善されません。

 
CTRL+Uで "Tick price "プロパティの値を変更しました。

備考

カスタムシンボルの分・秒の履歴は、これらのプロパティのいずれかがシンボル仕様で変更された場合、完全に削除されます。

  • SYMBOL_POINT - 1目盛りの値です。
  • SYMBOL_TRADE_TICK_SIZE - 1ティックの値で、許容される最小の価格変動を指定する。
  • SYMBOL_TRADE_TICK_VALUE- 利益を得たポジションの1ティックあたりの価格変化の値です。
Документация по MQL5: Пользовательские символы / CustomSymbolSetDouble
Документация по MQL5: Пользовательские символы / CustomSymbolSetDouble
  • www.mql5.com
После удаления истории пользовательского символа терминал попытается создать новую историю с использованием обновленных свойств. То же самое происходит и при ручном изменении свойств пользовательского символа.
 
どなたかご意見をお聞かせください:https://www.mql5.com/ru/forum/329680
Как установить комиссию для пользовательского символа?
Как установить комиссию для пользовательского символа?
  • 2020.01.03
  • www.mql5.com
Это спецификация символа EURUSD ICMarket, в которой указаны сборы: Когда я пытаюсь использовать Custom Symbol и копировать все из исходного символ...
 

カスタムシンボルを使用した場合、チャートが正しく更新されない。そのせいで、チャートのマークが捉えられないんです。

チャートを更新するには、OnTimer()を持つインジケータを書き、その中でチャートを移動させなければならない。

しかし、これは良い方法とは言えません。

チャートが自動的に更新されるようにしてください。

 
jaffer wilson :

カスタムシンボルを使用した場合、チャートが正しく更新されない。そのせいで、チャートのマークが捉えられないんです。

チャートを更新するには、OnTimer()を持つインジケータを書き、その中でチャートを移動させなければならない。

しかし、これは良い方法とは言えません。

チャートが自動的に更新されるような工夫をお願いします。

何か最新情報があれば、教えてください。

 
jaffer wilson:

カスタムシンボルを使用した場合、チャートが正しく更新されない。そのせいで、チャートのマークが捉えられないんです。

チャートを更新するには、OnTimer()を持つインジケータを書き、その中でチャートを移動させなければならない。

しかし、これは良い方法とは言えません。

チャートが自動的に更新されるようにしてください。

OnTimer()で刻みを受け入れて処理する。

 
Roman :

OnTimer()で刻みを受け入れて処理する。

これを試してみました。でも、OnTimer()そのものに関係することなんですよね。私がOnTimer()を処理しようとしている他の要件があることはご存じでしょう。通常のOnTimer()もOnTick()と同じように動作します。ご自分の目で確かめてください。

 
jaffer wilson:

これを試してみました。でも、OnTimer()そのものに関係することなんですよね。
OnTimer()で処理したい要件が他にもあるのはご存知の通りです。
通常のOnTimer()もOnTick()と同じように動作します。
ご自分の目で確かめてください。

OnTimer()がOnTick()のように動作しない。
しかし、確認したところ、数ミリ秒の遅延があることが確認されました。
これは、コメントにもあるように、カウンタが一時停止している様子で、おそらくティックが入った瞬間に停止していると思われます。
OnTick()ハンドラがトリガーされたとき、OnTimer()ハンドラがブロックされることがある。

追加されました。
OnTick()ハンドラをコメントアウトしても、OnTimer()の遅延が消えない。

//+------------------------------------------------------------------+
//|                                                         Test.mq5 |
//|                        Copyright 2019, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2019, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
{
   //create timer
   EventSetMillisecondTimer(20);

   return(INIT_SUCCEEDED);
}

//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
   //destroy timer
   EventKillTimer();
   
   Comment("");
}

//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
{


}

//+------------------------------------------------------------------+
//| Timer function                                                   |
//+------------------------------------------------------------------+
void OnTimer()
{
   Comment(GetTickCount());

}
//+------------------------------------------------------------------+
 
Roman :

OnTimer()がOnTick()のように動作しない
しかし、確認したところ、数ミリ秒の遅延があることが確認されました。
これは、コメントにもあるように、カウンターが一時停止しており、おそらくティックが入った瞬間に見られるものです。
OnTick()ハンドラがトリガーされると、OnTimer()ハンドラがブロックされることがある。

追加されました。
OnTick()ハンドラをコメントアウトしても、OnTimer()の遅延が消えない。

私のところでは、これはうまくいきません。

私のMT5バージョンの詳細です。