Eu simplesmente não tenho paciência para responder a tais perguntas.
RefreshRates
Осуществляет обновление данных в предопределенных переменных и массивах-таймсериях.
E o que são variáveis predefinidas e conjuntos de séries temporais podem ser encontrados na documentação.
- docs.mql4.com
Eu simplesmente não tenho paciência para responder a tais perguntas.
E você pode ler sobre variáveis predefinidas e conjuntos de séries temporais na documentação.
Isto é, os dados da função iClose() não são afetados de forma alguma pela função RefreshRates(). Então, como podemos fazer com que a funçãoiClose() produza informações atualizadas?
Zero. Um cronograma arbitrário.
Honestamente, estou surpreso... e isso é dizer de forma branda. Pensei que iClose() recebia valores do servidor do corretor, mas não... RefreshRates(); atualiza valores obtidos por iClose()
/********************Script program start function*******************/ void OnStart() { for(int i = 0; i < 10; i++) { Print(Bid, " *** ", iClose(_Symbol, PERIOD_CURRENT, 0)); Sleep(1000); RefreshRates();// Без RefreshRates(); значения iClose(_Symbol, PERIOD_CURRENT, 0) не меняются… // То, что без RefreshRates(); не меняются значения Bid, это понятно и нормально… } }/******************************************************************/
Aqui está o resultado da execução do roteiro
2021.02.15 11:39:35.559 00 EURUSD,M5: 1.21375 *** 1.21375 2021.02.15 11:39:34.559 00 EURUSD,M5: 1.21375 *** 1.21375 2021.02.15 11:39:33.559 00 EURUSD,M5: 1.21375 *** 1.21375 2021.02.15 11:39:32.559 00 EURUSD,M5: 1.21375 *** 1.21375 2021.02.15 11:39:31.559 00 EURUSD,M5: 1.2138 *** 1.2138 2021.02.15 11:39:30.559 00 EURUSD,M5: 1.21378 *** 1.21378 2021.02.15 11:39:29.559 00 EURUSD,M5: 1.21379 *** 1.21379 2021.02.15 11:39:28.559 00 EURUSD,M5: 1.21378 *** 1.21378 2021.02.15 11:39:27.559 00 EURUSD,M5: 1.21379 *** 1.21379 2021.02.15 11:39:26.559 00 EURUSD,M5: 1.21379 *** 1.21379
Bem, ok... Vou apenas ter em mente este recurso e inserir RefreshRates() se necessário;
ps; E iClose(_Symbol, PERIOD_CURRENT, 0) muda em MT5.
Francamente falando, estou surpreso... e isso é dizer de forma branda. Eu pensava que iClose() recebia valores do servidor do corretor, mas não... RefreshRates(); atualiza valores recebidos por iClose()
Aqui está o resultado da execução do roteiro
Bem, OK... Pessoalmente, vou apenas ter em mente este recurso e inserir RefreshRates() quando necessário;
Se eu mudar o cronograma para outro diferente do atual, os dados deixarão de ser atualizados a tempo, mesmo com RefreshRates(). Assim, o iClose e outras funções fundamentais no MT4 produzem um absurdo irrelevante. Tenho certeza de que 80% das informações não levam em conta estas características únicas do MT4. Como viver?)))
Francamente falando, estou surpreso... e isso é dizer de forma branda. Eu pensava que iClose() recebia valores do servidor do corretor, mas não... RefreshRates(); atualiza valores recebidos por iClose()
Aqui está o resultado da execução do roteiro
Bem, ok... Vou apenas ter em mente este recurso e inserir RefreshRates() se necessário;
ps; E iClose(_Symbol, PERIOD_CURRENT, 0) muda em MT5.
Qual é a solução? Mais muletas? Tipo, manter um histórico de carrapatos e recalcular todos os prazos em EAs por conta própria. Isto está além do bem e do mal)))).
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso