How to use the standard Modules of Trade Signals made avaible on Metatrader?

 

I'm new to the language and I'm facing difficulty using the signal class methods available by default in metatrader5 itself.

My intention is to use the standard signals that exist.

In the code below the returned value always returns "50".

Links: https://www.mql5.com/en/docs/standardlibrary/expertclasses/csignal || https://www.mql5.com/en/docs/standardlibrary/expertclasses/expertbaseclasses/cexpertsignal


//+------------------------------------------------------------------+
//|                                                         Test.mq5 |
//|                                  Copyright 2024, MetaQuotes Ltd. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2024, MetaQuotes Ltd."
#property link      "https://www.mql5.com"
#property version   "1.00"

#include <Expert\Signal\SignalAC.mqh>

input double Signal_AC_Weight = 0.5;

CSignalAC *sinal_ac = NULL;

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit() {
    sinal_ac = new CSignalAC;

    sinal_ac.Period(_Period);
    sinal_ac.Weight(Signal_AC_Weight);

    return(INIT_SUCCEEDED);
}

//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason) {
    if(sinal_ac != NULL) {
        delete sinal_ac;
        sinal_ac = NULL;
    }
}

//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick() {
    double buy_signal_AC = sinal_ac.LongCondition();
    double sell_signal_AC = sinal_ac.ShortCondition();

    Print("buy_signal_AC: ", buy_signal_AC);
    Print("sell_signal_AC: ", sell_signal_AC);
}
//+------------------------------------------------------------------+
Documentação sobre MQL5: Biblioteca Padrão / Módulos de estratégias / Módulos de Sinais de Negociação
Documentação sobre MQL5: Biblioteca Padrão / Módulos de estratégias / Módulos de Sinais de Negociação
  • www.mql5.com
O terminal do cliente MT5 inclui um conjunto de módulos já prontos de sinais de negociação para o "Assistente...
 
Someone?... Correct me if the idea is unfeasible due to the way the object was designed.