1. o manípulo indicador DEVE ser criado uma vez. Isto é feito no OnInit. Exemplo de criação:iMA
2. Primeiro item correcto 1.
Aqui está o que se obtém:
int MA0; // variable for storing the handle of the iMA indicator//+------------------------------------------------------------------+//| Expert initialization function |//+------------------------------------------------------------------+intOnInit()
MA0 = iMA(o_symbol.Name(), Period(), PeriodMA, ShiftMA, MethodMA, PriceMA);
//--- if the handle is not createdif(handle_iMA==INVALID_HANDLE)
{
//--- tell about the failure and output the error codePrintFormat("Failed to create handle of the iMA indicator for the symbol %s/%s, error code %d",
m_symbol.Name(),
EnumToString(Period()),
GetLastError());
//--- the indicator is stopped earlyreturn(INIT_FAILED);
}
//---
Agora diga-me, porque precisa de um ciclo tão grande - através de todas as barras?
É muito irracional.
Descreva a lógica nas suas próprias palavras.
A condição - o preço afasta-se da linha média noMinDist(30 pips). Se acontecer, então quando volta à linha média e atingeOpenDev( 10 pips) - há um sinal para abrir uma ordem de compra. (É sempre Comprar no topo da linha média)
A condição é que o preço se afaste da linha média naMinDist (30 pips), se acontecer, então quando o preço voltar à linha média e atingirOpenDev (10 pips) - há um sinal para abrir uma ordem de compra. (É sempre Comprar no topo da linha média)
Quando devemos verificar 'MinDist(30 pips)' e 'OpenDev(10 pips)' - a cada tique ou apenas no momento da abertura de um novo bar?
boa tarde a todos, preciso de uma dica sobre como traduzir o código de MT4 para MT5...
função no MT4 - devolve Verdadeiro ou Falso usando MA.
necessidade de o transferir para o MT5
O problema está nas séries temporais Baixo[i] e Alto[i] , não percebo como convertê-los.
boa tarde a todos, preciso de uma dica sobre como traduzir o código de MT4 para MT5...
função no MT4 - devolve Verdadeiro ou Falso usando MA.
necessidade de o transferir para o MT5
O problema está nas séries temporais Baixo[i] e Alto[i] , não entendo como convertê-los.
Tem de criar uma só vez o manípulo indicador. Isto é feito no OnInit. Exemplo de criação:iMA
2. Primeiro ponto de fixação 1.
1. o manípulo indicador DEVE ser criado uma vez. Isto é feito no OnInit. Exemplo de criação:iMA
2. Primeiro item correcto 1.
Aqui está o que se obtém:
é o que eu tenho:
Agora diga-me, porque precisa de um ciclo tão grande - através de todas as barras?
É muito irracional.
Descreva a lógica nas suas próprias palavras.
Agora diga-me, porque precisa de um ciclo tão grande - através de todas as barras?
É muito irracional.
Descreva a lógica nas suas próprias palavras.
A condição - o preço afasta-se da linha média noMinDist(30 pips). Se acontecer, então quando volta à linha média e atingeOpenDev( 10 pips) - há um sinal para abrir uma ordem de compra. (É sempre Comprar no topo da linha média)
A condição é que o preço se afaste da linha média naMinDist (30 pips), se acontecer, então quando o preço voltar à linha média e atingirOpenDev (10 pips) - há um sinal para abrir uma ordem de compra. (É sempre Comprar no topo da linha média)
Quando devemos verificar 'MinDist(30 pips)' e 'OpenDev(10 pips)' - a cada tique ou apenas no momento da abertura de um novo bar?
Qual é a razão para abrir uma posição imediatamente após o início da EA?
As condições para a abertura de uma posição não estão preenchidas, mas a posição é aberta
Qual é a razão para abrir uma posição imediatamente após o início da EA?
As condições para a abertura de uma posição não estão preenchidas, mas a posição é aberta
Onde e como são obtidos os valores das médias? Conseguiu-os de todo? Se os valores são normalmente obtidos, notou a indexação na matriz de médias?
Onde e como são obtidos os valores médios? São de todo obtidos? Se estes valores forem obtidos normalmente, notou a indexação nas matrizes de médias?
Aqui está o código
{ double MovingAverage1[], MovingAverage2[]; //задаем два массиса для МА int MovingAverageIndic1 = iMA(_Symbol,0,20,0,MODE_EMA,PRICE_CLOSE); int MovingAverageIndic2 = iMA(_Symbol,0,200,0,MODE_EMA,PRICE_CLOSE); ArraySetAsSeries(MovingAverage1,true); ArraySetAsSeries(MovingAverage2,true); CopyBuffer(MovingAverageIndic1,0,0,3,MovingAverage1); CopyBuffer(MovingAverageIndic2,0,0,3,MovingAverage2); if( (MovingAverage1[0]<MovingAverage2[0]) && (MovingAverage1[1]>MovingAverage2[1]) ) { if(PositionsTotal()==0) trade.Sell(0.1); } if( (MovingAverage1[0]>MovingAverage2[0]) && (MovingAverage1[1]<MovingAverage2[1]) ) { if(PositionsTotal()==1) trade.PositionClose(_Symbol); } }Aqui está o código
O manípulo do indicador DEVE ser criado uma vez. Isto é feito no OnInit. Exemplo de criação:iMA