Tada Silwol:
Tente o código a seguir.Existe alguma função no MT5 que arredonde um valor calculado por um indicador para o tick mais próximo?
Por exemplo:
O índice da S&P varia de 0,25 em 0,25.
Se meu indicador gerar um valor de 2573,17 , por exemplo.
Os ticks mais próximos serão 2573,00 e 2573,25.
Neste caso o valor retornado pelo indicador deveria ser 2573,25.
Existe alguma função que faça este arredondamento automático?
// ----------------------- // NormalizePrice Function // ----------------------- double NormalizePrice(double price) { double num_of_ticks, std_price, inf_lim, sup_lim; double midle, range[3]; uint index; mysymbol.Name(_Symbol); mysymbol.Refresh(); num_of_ticks = MathFloor(price/mysymbol.TickSize()); midle = num_of_ticks*mysymbol.TickSize(); inf_lim = midle - mysymbol.TickSize(); sup_lim = midle + mysymbol.TickSize(); if (price <= midle) { range[0] = (midle - price)/(midle - inf_lim); range[1] = (price - inf_lim)/(midle - inf_lim); range[2] = 0; } else { range[0] = 0; range[1] = (sup_lim - price)/(sup_lim - midle); range[2] = (price - midle)/(sup_lim - midle); } index = 0; index = ArrayMaximum(range,0,WHOLE_ARRAY); std_price = 0; switch (index) { case 0: std_price = inf_lim; break; case 1: std_price = midle; break; case 2: std_price = sup_lim; break; } return(std_price); }
Warlley Sales:
Tente o código a seguir.
Use esta função Tente o código a seguir.
https://www.mql5.com/pt/docs/marketinformation/symbolinfodouble
Exemplo:
double tick =SymbolnfoDouble (SYMBOL_TRADE_TICK_VALUE);
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
Existe alguma função no MT5 que arredonde um valor calculado por um indicador para o tick mais próximo?
Por exemplo:
Existe alguma função que faça este arredondamento automático?