Características da linguagem mql5, subtilezas e técnicas - página 63
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Define a bandeira para esconder indicadores chamados pelo Expert Advisor.
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 gráfico seja passado.
Eu encurralei o painel de possibilidade de receber pedidos na coruja para este fim e às vezes eu deixo os pedidos em modo manual, mas eles vão conforme a coruja os leva.
Acrescentei a possibilidade de fazer pedidos na coruja e às vezes faço pedidos em modo manual, mas eles vão da mesma forma que a coruja faz.
Inicialmente era um truque quando o próprio indicador executa Order-script no OBJ_CHART.
Os operadores Postfix (operador ++ e operador --) são definidos como
Fórum sobre negociação, sistemas de negociação automatizados e teste de estratégias de negociação
Precisa de ajuda para detectar um pequeno erro .
whroeder1, 2014.07.07 11:37
Por favor, informe, existe tal função no 4, e como implementá-la na MQL5?
Define a bandeira para ocultar os indicadores chamados pelo Expert Advisor.
Isto é o que parece, vê ajuda.
Fórum sobre negociação, sistemas de negociação automatizados e teste de estratégias de negociação
Testando 'CopyTicks'.
fxsaber, 2016.10.19 07:59
// А так же задает привычные MT4-функции: iOpen, iHigh, iLow, iClose, iTime, iVolume.
#define DEFINE_TIMESERIE(NAME,FUNC,T) \
class CLASS##NAME \
{ \
public: \
static T Get( const string Symb, const int TimeFrame, const int iShift ) \
{ \
T tValue[]; \
\
return((Copy##FUNC((Symb == NULL) ? _Symbol : Symb, _Period, iShift, 1, tValue) > 0) ? tValue[0] : -1); \
} \
\
T operator []( const int iPos ) const \
{ \
return(CLASS##NAME::Get(_Symbol, _Period, iPos)); \
} \
}; \
\
CLASS##NAME NAME; \
\
T i##NAME( const string Symb, const int TimeFrame, const int iShift ) \
{ \
return(CLASS##NAME::Get(Symb, TimeFrame, iShift)); \
}
DEFINE_TIMESERIE(Volume, TickVolume, long)
DEFINE_TIMESERIE(Time, Time, datetime)
DEFINE_TIMESERIE(Open, Open, double)
DEFINE_TIMESERIE(High, High, double)
DEFINE_TIMESERIE(Low, Low, double)
DEFINE_TIMESERIE(Close, Close, double)
Talvez alguém considere a abordagem MQL4 útil no trabalho com a história do tick também
Aplicação
Este parece ser o caso, veja ajuda.
Muito obrigado, eu vou tentar, SD disse que IndicatorRelease deveria fazer isso.
Quem já encontrou, qual é a forma correcta de organizar os campos numa estrutura em termos de alinhamento:
alinhamento em estruturas é suposto ir de cima para baixo, mas temos uma matriz que tem uma alocação de memória de 20 elementos, por isso o modo A parece ser o caminho certoPara os adeptos da MQL4 existe uma forma antiga de trabalhar com a TF na MQL5
Aplicação...
Bela maneira de pôr uma turma inteira numa Macro. Pena que você não possa trabalhar com tal classe no Debugger :-((
que encontrou como posicionar os campos na estrutura em termos de alinhamento:
O alinhamento nas estruturas é suposto ir de cima para baixo, mas nós temos uma matriz que é alocada memória abaixo de 20 elementos, então a forma A é meio corretaSe você quer dizer MQL, não há alinhamento.
E se queres dizer C++, a estrutura B seria melhor.
Mas em qualquer caso, o alinhamento do C++ é com o programador.