Revisar e ajustar um Indicador MT5

İş tamamlandı

Tamamlanma süresi: 23 saat

İş Gereklilikleri

Eu criei um indicador pelo ChatGPT e ele está compilando corretamente mas as linhas que são plotadas na janela separada do indicador MT5 não estão sendo atualizadas corretamente, elas aparecem como linhas retas horizontais e não tem nenhuma variação, e eu não sei programar e não sei como ajustar isso e o chatGPT também não conseguiu resolver.

O código é bem pequeno e básico, acredito ser simples de resolver para quem sabe programar.


Segue o código gerado pelo chatGPT:


//+------------------------------------------------------------------+

//| Custom indicator for MetaTrader 5                                |

//+------------------------------------------------------------------+

#property indicator_separate_window

#property indicator_buffers 3

#property indicator_plots   3

#property indicator_type1   DRAW_LINE

#property indicator_type2   DRAW_LINE

#property indicator_type3   DRAW_LINE

#property indicator_color1  DeepSkyBlue  // Amplitude

#property indicator_color2  Red          // Média da Amplitude

#property indicator_color3  Green        // Linha Limite


//--- input parameters

input int PeriodoAmplitude = 30;

input int PeriodoMediaAmplitude = 17;

input double LinhaLimite = 20.0;


//--- indicator buffers

double amplitudeBuffer[];

double mediaAmplitudeBuffer[];

double linhaLimiteBuffer[];


//+------------------------------------------------------------------+

//| Indicator initialization function                                |

//+------------------------------------------------------------------+

int OnInit()

{

    SetIndexBuffer(0, amplitudeBuffer);

    SetIndexBuffer(1, mediaAmplitudeBuffer);

    SetIndexBuffer(2, linhaLimiteBuffer);


    ArraySetAsSeries(amplitudeBuffer, true);

    ArraySetAsSeries(mediaAmplitudeBuffer, true);

    ArraySetAsSeries(linhaLimiteBuffer, true);


    PlotIndexSetString(0, PLOT_LABEL, "Amplitude");

    PlotIndexSetString(1, PLOT_LABEL, "Média da Amplitude");

    PlotIndexSetString(2, PLOT_LABEL, "Linha Limite");


    IndicatorSetString(INDICATOR_SHORTNAME, "Indicador Customizado de Amplitude");

    return INIT_SUCCEEDED;

}


//+------------------------------------------------------------------+

//| Custom indicator iteration function                              |

//+------------------------------------------------------------------+

int OnCalculate(const int rates_total,

                const int prev_calculated,

                const datetime &time[],

                const double &open[],

                const double &high[],

                const double &low[],

                const double &close[],

                const long &tick_volume[],

                const long &volume[],

                const int &spread[])

{

    int required = MathMax(PeriodoAmplitude, PeriodoMediaAmplitude);

    if (rates_total < required)

        return 0;


    for (int i = prev_calculated > required ? prev_calculated : required; i < rates_total; i++)

    {

        amplitudeBuffer[i] = high[iHighest(NULL, 0, MODE_HIGH, PeriodoAmplitude, i)] - low[iLowest(NULL, 0, MODE_LOW, PeriodoAmplitude, i)];

        mediaAmplitudeBuffer[i] = iMA(NULL, 0, PeriodoMediaAmplitude, 0, MODE_SMA, PRICE_CLOSE);

        linhaLimiteBuffer[i] = LinhaLimite;


        // Debugging information

        Print("Bar ", i, ": Amplitude = ", amplitudeBuffer[i], ", Media = ", mediaAmplitudeBuffer[i], ", LinhaLimite = ", linhaLimiteBuffer[i]);

    }


    return rates_total;

}



---------------------------------------------------------------------




Ele deveria ficar como na imagem anexo...




Yanıtlandı

1
Geliştirici 1
Derecelendirme
(23)
Projeler
29
14%
Arabuluculuk
3
0% / 67%
Süresi dolmuş
3
10%
Çalışıyor
2
Geliştirici 2
Derecelendirme
(35)
Projeler
60
22%
Arabuluculuk
3
33% / 33%
Süresi dolmuş
15
25%
Serbest
3
Geliştirici 3
Derecelendirme
(845)
Projeler
1447
72%
Arabuluculuk
119
29% / 47%
Süresi dolmuş
355
25%
Çalışıyor
Yayınlandı: 3 makale
Benzer siparişler
Anexei o vídeo de como é o EA que preciso, abaixo segue a descrição Estratégia de Grid Direcional com Prioridade e Controle Financeiro Descrição Geral Preciso desenvolver um Expert Advisor (EA) em MQL5 para MetaTrader 5, baseado em uma estratégia de operações progressivas por níveis (grid) , com controle financeiro por lucro e perda , prioridade direcional e gestão independente de compras e vendas . O robô NÃO
Preciso de um EA para XAUUSD, para fazer operações a partir do sinal dos indicadores: - Zigzag color, Stop Atr e Hilo, Com opções de mudanças de parâmetros(configurações) igual aos indicadores... Conta Hedge. Parâmetros: Entrada depois de topos e fundos do indicador zigzag color, Entradas no sinal do indicador STOP ATR ou indicador Hilo, ou opção de entrada, a partir do (sinal dos dois indicadores stop atr e hilo)
Canal 4 candles 30 - 50 USD
Preciso de uma EA 12. 981 169843.. me chamem! Mt5. Estratégia muito simples apenas com candles e canal. Stop gain stop loss, e martingale!!! Filtro de horario, maximo de gain no dia e maximo de loss no dia
Boa tarde, tenho um estratégia muito boa que já opero na real, mas se conseguirmos fazer um EA será muito melhor devido ao tempo necessário na tela e tbm o emocional. A estrategia basicamente é usar 2 tempos graficos diferentes, um macro (10 min por exemplo) e um micro ( 1 min) . Grafico maior será pra marcar as regiões e as entradas serão no gráfico de 1 min (micro) usando um indicador... meu contato: 71 992063513
"Tenho um script no TradingView que uso para entradas manuais. Gostaria de transformá-lo em um robô para MT5 que execute automaticamente as entradas e saídas conforme as condições do script. Posso enviar o código em Pine Script."
I need to modify the CURRENCY indicator to allow viewing the same currency on different timeframes simultaneously, overlaid on the same chart. Insert the same currency multiple times into the indicator. Example: USD D1 USD H4 USD H1 USD M30 USD M15 USD M5 Display all these curves on the same chart, each representing the currency's slope on a different timeframe. Customizable settings for each line, including: Color
Criterios de entrada: 1 stochastico em um tempo gráfico maior, por ex: 1h 1 stochastico em um tempo grafico menor, por ex: 5m *venda: quando o stoch do tempo maior estiver vendido, espera-se o stochastico do tempo menor entrar na zona de overbought e cruzar pra venda, a venda deve ser a mercado na abertura do candle seguinte ao candle que fez o stoch virar pra venda, ou seja a ordem só deve ser aberta quando o candle

Proje bilgisi

Bütçe
34+ USD
Son teslim tarihi
to 1 gün