Tengo experiencia en la creación de un indicador de equilibrio, ¿se acercará esto a la creación de un hiperparámetro?
No estoy seguro, si no hay una correlación real, entonces puede que no sirva de nada... de hecho esta es la pregunta que todo el mundo se plantea en el MdD :)
no es seguro que no haya una correlación real, puede que no sirva de nada... esencialmente esta es la pregunta que todo el mundo se plantea en el MdD :)
Por si acaso, imagen, indicador de equilibrio (ventana inferior).
El equilibrio de los pasos firmes, la línea verde significa.
El balance no es necesario en valores absolutos, sino, por ejemplo, el factor de beneficio actual... es decir, normalizar de alguna manera el gráfico
es decir, puedo normalizar el gráfico de alguna manera. entonces es posible relacionar esta variable con el resto de alguna manera, por ejemplo, utilizando la lógica difusa o una neurona.
Каждая торговая стратегия нуждается в объективной оценке ее эффективности. Для этого используется обширный ряд статистических параметров. Многие из них просты в расчете и показывают интуитивно понятные метрики. Другие сложнее в построении и в интерпретации значений. Несмотря на все это многообразие, есть очень мало качественных метрик для...
A continuación, añada sus indicadores y R^2 como términos de entrada, luego describa lingüísticamente las reglas de interacción entre las variables y obtenga una señal a la salida
esto es sólo un ejemplo, también se puede utilizar la neurona (hay artículos también), pero la lógica difusa me parece más flexible e intuitiva para estas tareas, y también se puede optimizar como una neurona o sus parámetros, pero habrá menos intuiciones
Трейдеры часто задаются вопросом о том, как улучшить торговую систему или создать новую за счет машинного обучения. Несмотря на обилие публикаций, остается открытым вопрос о простом и интуитивно понятном способе создания моделей, которые невозможно аналитически просчитать без использования компьютерных вычислений. Нечеткая логика — это окно в...
Lamentablemente, por el momento, no estoy familiarizado con el aprendizaje automático. Y no voy a dominarlo pronto.
Pensaba utilizar el indicador de equilibrio para una rápida optimización continua. Lamentablemente, tenemos que desarrollar un análogo del indicador de balance y un script para buscar parámetros para cada Asesor Experto. Creo que es realista incluir estos algoritmos en el robot para la optimización automática. En principio, se trata probablemente del mismo aprendizaje automático pero a nivel de autogestión.
Tal vez yo también lo haga.
Mientras tanto, tal vez alguien encuentre útil lo que yo tengo. Indicador de equilibrio para MT4.
int start()
{
int i;
int counted_bars=IndicatorCounted();
//----if(Bars<=3 ) return(0);
if (PRED_CHISLO_BAROV == Bars) return(0);
i=Bars-1;// i присваиваем значение числа баров .if(counted_bars>1) i=Bars-counted_bars-1;// while(i>=0)
{
//================================================================================================================================================================================================
MacdCurrent = iCustom( NULL, 0, "_________________",
0,i);
MacdPrevious = iCustom( NULL, 0, "_______________",
0,i+1);
SignalCurrent = iCustom( NULL, 0, "_____________",
1,i);
SignalPrevious = iCustom( NULL, 0, "_____________",
1,i+1);
MacdCurrent_Trend = iCustom( NULL, 0, "______________",
0,i);
MacdPrevious_Trend = iCustom( NULL, 0, "___________________",
0,i+1);
SignalCurrent_Trend = iCustom( NULL, 0, "__________________",
1,i);
if(Trend_InpSignalSMA==0) SignalCurrent_Trend = 0;
SignalPrevious_Trend = iCustom( NULL, 0, "_______________",
1,i+1);
if(Trend_InpSignalSMA==0) SignalPrevious_Trend = 0;
//================================================================================================================================================================================================// Оцениваем в какой позиции мы стояли бы по трендовому MACD И назначаем Trend =1 восходящий =-1 низходящийif(
MacdPrevious_Trend < 0 && //1) основная линия MACD ниже 0
MacdCurrent_Trend > SignalCurrent_Trend && MacdPrevious_Trend < SignalPrevious_Trend && //2) основная линия только что пересекла сигнальную с низу в верхMathAbs(MacdPrevious_Trend) > (Trend_MACDOpenLevel*Point) //3) основная линия ниже заданного для открытия значения
) Trend =1;
if(
MacdPrevious_Trend > 0 && // 1) основная линия MACD выше 0
MacdCurrent_Trend < SignalCurrent_Trend && MacdPrevious_Trend > SignalPrevious_Trend && //- основная линия только что пересекла сигнальную с низу в верхMathAbs(MacdPrevious_Trend) > (Trend_MACDOpenLevel*Point) // - основная линия выше заданного для открытия значения
) Trend =-1;
//================================================================================================================================================================================================//РАСЧЕТ ЛИНИИ БАЛАНСА.// Закрываем позицию SELLif(
(
Posic == -1 && // Если открыта позиция SELL
MacdPrevious < 0 && // 1) основная линия MACD ниже 0
MacdCurrent > SignalCurrent && MacdPrevious < SignalPrevious && //- основная линия только что пересекла сигнальную с низу в верхMathAbs(MacdPrevious) > (Ind_MACDCloseLevel*Point) // - основная линия ниже заданного для закрытия значения
) || (
Posic == -1 && (Cena_0 - Open[i])/Point * Naprav >= TakeProfit
) || (
Posic == -1 && (Open[i] - Cena_0)/Point * Naprav >= StopLoss
)
)
{
if( Cena_0 > 0 ) Balans = Balans +(Cena_0 -Open[i])/Point * Naprav ;
Cena_0 = 0; Posic = 0; Capital = 0 ;
}
// Открываем позицию BUYif(
Trend == 1 &&
Posic == 0 && // Если позиция зарыта
MacdPrevious < 0 && // 1) основная линия MACD ниже 0
MacdCurrent > SignalCurrent && MacdPrevious < SignalPrevious && //- основная линия только что пересекла сигнальную с низу в верхMathAbs(MacdPrevious) > (Ind_MACDOpenLevel*Point) // - основная линия ниже заданного для открытия значения
)
{ Cena_0 = Open[i]; Posic = 1; Balans = Balans - Spred; }
// Закрываем позицию BUYif(
(
Posic == 1 && // Если открыта позиция BUY
MacdPrevious > 0 && // 1) основная линия MACD выше 0
MacdCurrent < SignalCurrent && MacdPrevious > SignalPrevious && //- основная линия только что пересекла сигнальную с верх в низу MathAbs(MacdPrevious) > (Ind_MACDCloseLevel*Point) // - основная линия выше заданного для закрытия значения
) || (
Posic == 1 && (Cena_0 - Open[i])/Point * Naprav >= StopLoss
) || (
Posic == 1 && (Open[i] - Cena_0)/Point * Naprav >= TakeProfit
)
)
{
if( Cena_0 > 0 ) Balans = Balans +(Open[i] - Cena_0)/Point * Naprav ;
Cena_0 = 0; Posic = 0; Capital = 0 ;
}
// Открываем позицию SELLif(
Trend == -1 &&
Posic == 0 && // Если позиция зарыта
MacdPrevious > 0 && // 1) основная линия MACD выше 0
MacdCurrent < SignalCurrent && MacdPrevious > SignalPrevious && //- основная линия только что пересекла сигнальную с верх в низу MathAbs(MacdPrevious) > (Ind_MACDOpenLevel*Point) // - основная линия выше заданного для открытия значения
)
{ Cena_0 = Open[i]; Posic = -1; Balans = Balans - Spred; }
a1_Buffer[i]= Balans;
//================================================================================================================================================================================================//РАСЧЕТ ЛИНИИ ТЕКУЩЕГО КАПИТАЛЛА.// При открытой позиции BUYif( Posic > 0 )
{
if( Cena_0 > 0 ) Capital = ((Open[i] - Cena_0)/Point * Naprav) ;
}
// При открытой позиции SELLif( Posic < 0 )
{
if( Cena_0 > 0 ) Capital = ((Cena_0 -Open[i])/Point * Naprav) ;
}
a2_Buffer[i]= Balans + Capital;
//================================================================================================================================================================================================// a3_Buffer[i]= //================================================================================================================================================================================================// a4_Buffer[i]=//================================================================================================================================================================================================//================================================================================================================================================================================================if (i >= Bars-(TOCHKA_VHODA*2)) Cena_0 = 0;//
i--; PRED_CHISLO_BAROV = Bars;
}
//----return(0);
}
//+------------------------------------------------------------------+
P/S. Te agradecería que añadieras algunos ejemplos de indicadores similares en este hilo. Sería mejor junto con el Asesor Experto que copia.
Calcule por los parámetros actuales un gráfico de equilibrio a una cierta profundidad de la historia, y si es malo entonces corríjalos en vivo, y observe la curva de nuevo... hasta que se convierta en óptima, entonces opere hasta que empiece a bajar de nuevo, y repase los parámetros de nuevo... El backtest será por supuesto largo en este caso
Tengo experiencia en la creación de un indicador de equilibrio, ¿se acercará esto a la creación de un hiperparámetro?
No estoy seguro, si no hay una correlación real, entonces puede que no sirva de nada... de hecho esta es la pregunta que todo el mundo se plantea en el MdD :)
no es seguro que no haya una correlación real, puede que no sirva de nada... esencialmente esta es la pregunta que todo el mundo se plantea en el MdD :)
:)
Por si acaso, imagen, indicador de equilibrio (ventana inferior).
El equilibrio de los pasos firmes, la línea verde significa.
:)
Por si acaso, imagen, indicador de equilibrio (ventana inferior).
El equilibrio de los pasos firmes, la línea verde significa.
¡Oooh!
+
:)
Por si acaso, imagen, indicador de equilibrio (ventana inferior).
El equilibrio de los pasos firmes, la línea verde significa.
El balance no es necesario en valores absolutos, sino, por ejemplo, el factor de beneficio actual... es decir, normalizar de alguna manera el gráfico
es decir, puedo normalizar el gráfico de alguna manera. entonces es posible relacionar esta variable con el resto de alguna manera, por ejemplo, utilizando la lógica difusa o una neurona.
R^2 sería de gran ayuda
https://www.mql5.com/ru/articles/2358
A continuación, añada sus indicadores y R^2 como términos de entrada, luego describa lingüísticamente las reglas de interacción entre las variables y obtenga una señal a la salida
esto es sólo un ejemplo, también se puede utilizar la neurona (hay artículos también), pero la lógica difusa me parece más flexible e intuitiva para estas tareas, y también se puede optimizar como una neurona o sus parámetros, pero habrá menos intuiciones
https://www.mql5.com/ru/articles/3795
Gracias por los mensajes.
Lamentablemente, por el momento, no estoy familiarizado con el aprendizaje automático. Y no voy a dominarlo pronto.
Pensaba utilizar el indicador de equilibrio para una rápida optimización continua. Lamentablemente, tenemos que desarrollar un análogo del indicador de balance y un script para buscar parámetros para cada Asesor Experto. Creo que es realista incluir estos algoritmos en el robot para la optimización automática. En principio, se trata probablemente del mismo aprendizaje automático pero a nivel de autogestión.
Tal vez yo también lo haga.
Mientras tanto, tal vez alguien encuentre útil lo que yo tengo. Indicador de equilibrio para MT4.
P/S. Te agradecería que añadieras algunos ejemplos de indicadores similares en este hilo. Sería mejor junto con el Asesor Experto que copia.
¿Y sin la jerga? :))))))
Calcule por los parámetros actuales un gráfico de equilibrio a una cierta profundidad de la historia, y si es malo entonces corríjalos en vivo, y observe la curva de nuevo... hasta que se convierta en óptima, entonces opere hasta que empiece a bajar de nuevo, y repase los parámetros de nuevo... El backtest será por supuesto largo en este caso
Gracias.
Pero habrá un millón de asas, tendré que reescribir todos los indicadores en el cuerpo del Asesor Experto