Olá pessoal,
. . .
Olá João!
Em OnInit():
int HandleHLDG; //--- HLDG indicator HandleHLDG = iCustom(_Symbol, PERIOD_CURRENT, "HLDG_V2", 14); if(HandleHLDG == INVALID_HANDLE) { Print(_Symbol, " - Error creating HLDG indicator..."); return(INIT_FAILED); }
... Depois:
double HLDG_Buy[1], HLDG_Sell[1]; //--- HLDG indicator - Buy if(CopyBuffer(HandleHLDG, 1, 1, 1, HLDG_Buy) < 0) { Print(_Symbol, " - Failed to copy data from HLDG indicator..."); return; } //--- HLDG indicator - Sell if(CopyBuffer(HandleHLDG, 0, 1, 1, HLDG_Sell) < 0) { Print(_Symbol, " - Failed to copy data from HLDG indicator..."); return; } //--- Checks signals if(HLDG_Buy[0] > 0.0) { //--- Buy ... } if(HLDG_Sell[0] > 0.0) { //--- Sell ... }
... Em OnDeinit():
//--- Free the handle of the indicators if(HandleHLDG != INVALID_HANDLE) {IndicatorRelease(HandleHLDG);}
Olá João!
Em OnInit():
... Depois:
... Em OnDeinit():
Cara obrigado pela ajuda.
Muito legal as validações de erros.
É um ponto que preciso melhorar no meu código.
Uma diferença que eu estava fazendo é o buffer que eu estava copiando com os parametros: 0,0.1 e 1,0.1.
Agora esta certinho.
Pode me dizer oque é esse 1 do meio na declaração do copy buffer?
Cara obrigado pela ajuda.
Muito legal as validações de erros.
É um ponto que preciso melhorar no meu código.
Uma diferença que eu estava fazendo é o buffer que eu estava copiando com os parametros: 0,0.1 e 1,0.1.
Agora esta certinho.
Pode me dizer oque é esse 1 do meio na declaração do copy buffer?
Bom dia João!
Quando informo "1" nesse parâmetro, é copiado o valor correspondente à última barra fechada. Considerei que você iria verificar os sinais do indicador somente a cada nova barra.
Se for verificar os sinais do indicador a cada tick, altere esse valor para "0" (zero) e a função copia o valor correspondente à barra atual.
Bom dia João!
Quando informo "1" nesse parâmetro, é copiado o valor correspondente à última barra fechada. Considerei que você iria verificar os sinais do indicador somente a cada nova barra.
Se for verificar os sinais do indicador a cada tick, altere esse valor para "0" (zero) e a função copia o valor correspondente à barra atual.
Legal mano.
Deu pra entender agora.
Fiz do jeito que você mostrou, esta dando certo porém, ainda em alguns casos ele ainda abre varias operações no mesmo candle:
Sabe porque isso pode estar ocorrendo ?
Legal mano.
Deu pra entender agora.
Fiz do jeito que você mostrou, esta dando certo porém, ainda em alguns casos ele ainda abre varias operações no mesmo candle:
Sabe porque isso pode estar ocorrendo ?
Pq antes de abrir uma operação vc tem o dever de checar se já existe uma Posição aberta, e caso tenha, tomar uma decisão baseado nisso!
Pq antes de abrir uma operação vc tem o dever de checar se já existe uma Posição aberta, e caso tenha, tomar uma decisão baseado nisso!
Pq antes de abrir uma operação vc tem o dever de checar se já existe uma Posição aberta, e caso tenha, tomar uma decisão baseado nisso!
Fala man, blz?
ja estou fazedo essa verificação.
Dei uma olhada e vi que era stoploss curto quando a entrada é feita no meio de candles com pouco volume e a volatilidade é alta, ai acaba pegando o stop e ja abrindo outra ordem.
Sabem alguma tática pra evitar isso?
Vlw pessoal.
Fala man, blz?
ja estou fazedo essa verificação.
Dei uma olhada e vi que era stoploss curto quando a entrada é feita no meio de candles com pouco volume e a volatilidade é alta, ai acaba pegando o stop e ja abrindo outra ordem.
Sabem alguma tática pra evitar isso?
Vlw pessoal.
Olá João!
Uma forma seria usando isNewBar(), como nesse exemplo ...
- www.mql5.com
- 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
Olá pessoal,
Blz com vocês?
Estou usando este indicador que plota bolinhas no gráfico quando vê uma boa entrada, mas eu já tentei de varias lógicas para fazer com que, quando a bolinha apareça o EA envie uma ordem, de compra ou venda, dependendo do sinal.
Alguem ja trabalhou com esse tipo de indicador e pode me ajudar me indicando uma lógica adequada?
Obrigado desde já.
:)