O presente de um erro difícil de encontrar na execução
Como é ::CopyTicks melhor do que Copyticks ?
E porque é que o resultado é sempre -1. Estes erros devem ser reportados no momento da compilação.
Então, tudo é lógico.ERR_INVALID_ARRAY tem um erro.
CopyTicks é exactamente do tipo, se apenas o seu tamanho for igual ao tamanhoof(MqlTick). É claro, exactamente este tamanho pode ser verificado em tempo de compilação.
Bem, o CopyTicks personalizado obedece a todas as regras do MQL.
As matrizes de descendentes não podem ser convertidas em matrizes de antepassados. Mas elemento por elemento, sim. Esta é uma restrição do ArrayCopy, o que seria bom de remover.
// Возвращает true, если нет бара с таким временем ("дырка")bool IsHole( conststring Symb, constENUM_TIMEFRAMES TimeFrame, constdatetime time )
{
return(Bars(Symb, TimeFrame, SeriesInfoInteger(_Symbol, PERIOD_CURRENT, SERIES_FIRSTDATE), time) +
Bars(Symb, TimeFrame, time, SeriesInfoInteger(_Symbol, PERIOD_CURRENT, SERIES_LASTBAR_DATE)) ==
SeriesInfoInteger(_Symbol, PERIOD_CURRENT, SERIES_BARS_COUNT));
}
Каждый скрипт и каждый эксперт работает в собственном отдельном потоке. Все индикаторы, рассчитываемые на одном символе, даже если они запущены на разных графиках, работают в одном потоке. Таким образом, все индикаторы на одном символе делят между собой ресурсы одного потока. В одном потоке с индикаторами также последовательно выполняются...
Uma pequena ponta do chapéu - rodando EAs/scripts em objetos OBJ_CHART.
Por isso, a execução de EAs fica suspensa - não é executada de forma alguma. Mas os guiões funcionam perfeitamente. Portanto, abre algumas oportunidades.
Por exemplo, podemos usar as funções de ordem dos indicadores nos gráficos, onde já existe um Expert Advisor em funcionamento. E não precisamos de abrir novas cartas auxiliares.
Você usouum indicador, embora o indicador possa negociar sem ele, através de eventos
Isto requer um "sniffer" EA para correr em paralelo, ou seja, é necessário um gráfico auxiliar.
A situação no exemplo é um pouco diferente: há um gráfico e alguns EA já estão correndo nele. E às vezes queremos passar a OrderSend através do indicador sem abrir novos indicadores.
Isto requer um EA "tap" para correr em paralelo, ou seja, é necessário um gráfico auxiliar.
A situação no exemplo é um pouco diferente: há um gráfico e alguns EA já estão correndo nele. E às vezes queremos passar a OrderSend através do indicador sem abrir novos indicadores.
Claro, sem DLL para que o Market o passe.
No vídeo também funciona sem DLL. O Expert Advisor só precisa de um em qualquer gráfico, pode estar no actual.
O exemplo tem uma situação ligeiramente diferente: um gráfico e já existe algum EA a correr nele. E eu quero executar OrderSend através do indicador sem abrir novos, às vezes.
O presente de um erro difícil de encontrar na execução
Como é ::CopyTicks melhor do que Copyticks ?
E porque é que o resultado é sempre -1. Estes erros devem ser reportados no momento da compilação.
Então, tudo é lógico.ERR_INVALID_ARRAY tem um erro.
CopyTicks é exactamente do tipo, se apenas o seu tamanho for igual ao tamanhoof(MqlTick). É claro, exactamente este tamanho pode ser verificado em tempo de compilação.
Bem, o CopyTicks personalizado obedece a todas as regras do MQL.
As matrizes de descendentes não podem ser convertidas em matrizes de antepassados. Mas elemento por elemento, sim. Esta é uma restrição do ArrayCopy, o que seria bom de remover.
Fórum sobre Trading, Sistemas Automatizados de Trading e Testes de Estratégia
Perguntas dos iniciantes MQL5 MT5 MetaTrader 5
fxsaber, 2017.10.19 21:13
Funciona sem acessar o servidor.
Um presente sob a forma de um erro de execução elusivo
Na próxima construção a prenda será desligada, infelizmente.
Fórum sobre negociação, sistemas de negociação automatizados e teste de estratégias de negociação
Bibliotecas: Especialista
fxsaber, 2017.10.31 01:27
Uma pequena ponta do chapéu - rodando EAs/scripts em objetos OBJ_CHART.
Por isso, a execução de EAs fica suspensa - não é executada de forma alguma. Mas os guiões funcionam perfeitamente. Portanto, abre algumas oportunidades.
Por exemplo, podemos usar as funções de ordem dos indicadores nos gráficos, onde já existe um Expert Advisor em funcionamento. E não precisamos de abrir novas cartas auxiliares.
Você usouuma dica, embora o indicador possa negociar sem ela, através de eventos
Você usouum indicador, embora o indicador possa negociar sem ele, através de eventos
Isto requer um "sniffer" EA para correr em paralelo, ou seja, é necessário um gráfico auxiliar.
A situação no exemplo é um pouco diferente: há um gráfico e alguns EA já estão correndo nele. E às vezes queremos passar a OrderSend através do indicador sem abrir novos indicadores.
Claro, sem DLL para que o Market o passe.
Isto requer um EA "tap" para correr em paralelo, ou seja, é necessário um gráfico auxiliar.
A situação no exemplo é um pouco diferente: há um gráfico e alguns EA já estão correndo nele. E às vezes queremos passar a OrderSend através do indicador sem abrir novos indicadores.
Claro, sem DLL para que o Market o passe.
No vídeo também funciona sem DLL. O Expert Advisor só precisa de um em qualquer gráfico, pode estar no actual.
Você só precisa de um Expert Advisor em qualquer gráfico, você pode ter um no gráfico atual também.
Fórum sobre negociação, sistemas de negociação automatizados e teste de estratégias de negociação
Peculiaridades da linguagem mql5, sutilezas e truques
fxsaber, 2017.10.31 06:08
O exemplo tem uma situação ligeiramente diferente: um gráfico e já existe algum EA a correr nele. E eu quero executar OrderSend através do indicador sem abrir novos, às vezes.
Aplicação
SZY O conversor BMP->GIF/PNG também está implementado.