EL INTERCAMBIO DE IDEAS - página 15

 
leonid553 писал (а) >>

No se trata realmente de estrategia. No es difícil insertar un indicador.

Pero, ¿cómo hacer que el código de los expertos funcione a precios de apertura de forma programada?

¿Para obtener el mismo resultado al pasar por TODOS LOS BILLETES, que al pasar por PRECIOS ABIERTOS?

Todavía no he podido hacerlo.....

Estar atado a las succiones de tiempo o volumen.... Puedes perderte las garrapatas

Yo lo hago así.

en variables

int última_barra =0;

int inicio()

{

if (!IsNewBar()) return(0);

llegamos aquí sólo una vez en el primer tick de una nueva barra. incluso si nos perdimos el primer tick de esta barra

}

bool IsNewBar()

{

if (last_bar == Bars) return(false);
última_barra = Bares;
return(true);

}

 
kharko писал (а) >>

Coge el código... Abre y modifica en los precios de apertura...

kharko y esmaster, ¡gracias!

Pero ya escribí arriba en la página anterior que esos métodos simples no sirven. Lo he probado yo mismo usando ambos métodos - he insertado una condición en los precios de apertura en void start().

Pero parece que esto no es suficiente. Al igual que antes, obtengo resultados diferentes y muy opuestos cuando corro por PRECIOS ABIERTOS y por TODOS LOS TICKERS.

Probablemente, tenemos que comprobar el trabajo "de esta manera y de la otra" en el gráfico visual del probador, luego "sentir la diferencia" y de alguna manera cambiar el trabajo de otras funciones (además de start() )

//-----------------------------------------------------------
void start()
   {
   if (!IsTradeAllowed()) return;
   level_buy_stop=0;
   level_sell_stop=0;
   StepingStop();
   StepingPendings();
   if (TotalBuy ()==0 && TotalBuyStop ()==0) SetBuyStop ();
   if (TotalSell()==0 && TotalSellStop()==0) SetSellStop();
   Comment("Level Buy Stop=",level_buy_stop*Point,
    "\n","Level Sell Stop=",level_sell_stop*Point);
   }
//-----------------------------------------------------
void StepingStop()      {... .  }
//-----------------------------------------------------
void StepingPendings()  {... .  }
//-----------------------------------------------------
void SetBuyStop()    {... ...}

void SetSellStop()   {... ...}

int TotalBuy()       {  ...  }

int TotalBuyStop()   {...    }

int TotalSell()      {...... }

int TotalSellStop()  {.... ..}

// End
 
leonid553 diferente porque la fijación es a precios de apertura... tenemos que eliminar los topes y los beneficios por completo... y cerrar a precios de apertura...
 
leonid553 писал (а) >>

Hola a todos. Propongo utilizar el llamado "Detector de tendencias". No esperaba un resultado tan bueno de este hallazgo mío. Accidentalmente lo cegó - lo puso. ¡Inserto esta parte en casi todos los Asesores Expertos e incluso un Asesor Experto perdedor produce algún beneficio! Disminuye el número de operaciones contra la tendencia (en su mayoría perdedoras) y aumenta en gran medida el parámetro de Rentabilidad del Asesor Experto, ¡a menudo hasta al menos dos! Esto significa que, fuera del periodo de optimización, es mucho más probable que obtengamos beneficios.

La idea es la siguiente: tomamos los indicadores BearsPower y BullsPower (poder de los toros y poder de los osos) y los comparamos entre sí. Pero basta con compararlas: es un asunto doloroso. Hacerlo de forma programada es engorroso. Por eso les pongo MA y comparo los valores de MA en la barra cero. Sólo hay que sumar estos valores = Delta. Además, todo es sencillo. Si DELTA ..>0 - la tendencia es alcista. De lo contrario, ¡se va hacia abajo!

Sólo tenemos que añadir a la condición para comprar si ((Delta>=0) && ... ...

Y en la condición de venta - si ((Delta<=0) && ... ...

En los parámetros externos de cualquier Asesor Experto, inserte :

No tienes que insertarlo. Pero entonces hay que recoger estos parámetros e insertar valores numéricos en lugar de nombres de variables directamente en el código. Y aquí está el bloque en sí:

Este es un ejemplo de cómo funciona un EA con el Detector de Tendencias. Podemos ver que en caso de una tendencia alcista, se abren las posiciones de compra, y viceversa.

Tal vez alguien tenga sugerencias para mejorar y perfeccionar el diseño. Me gustaría saber qué tan prometedor será este detector de tendencias.

Hice el indicador de acuerdo con la descripción exacta y se sorprendió :) Tengo un lag MACCD :)

Archivos adjuntos:
 
Vinin писал (а) >>

вот и индикатор. _LineStat_1.mq4

На экран выводится количество баров.Выводится 3 сигмы. И если цена находится внутри одно СКО, то перерасчета не прноизводится, так как все в допустимых пределах. При пробитии, будет перерасчет.

Hay tres valores numéricos en la esquina superior izquierda del gráfico después de N=150 (número de barras). Por favor, díganme qué significan y cómo utilizarlos

 
Figar0 писал (а) >>

Mi idea, voy a empezar...

La idea es antigua, pero por alguna razón no se ha generalizado en la aplicación, yo mismo lo uso, funciona bastante bien con algunas estrategias. Salir sólo por Take Profit. Si adivinó la dirección - obtenga el take profit inicialmente planeado, si no - apriete el TP siguiendo el precio (puede usar diferentes algoritmos - bucles, bandas elásticas, indicadores de nivel, etc.) Cierre el TP después del precio. En este caso, la toma puede ser negativa, pero suele ser mucho más rentable que la activación de un stop loss. No se prohíbe un stoploss de seguridad para limitar las grandes pérdidas.

1) También utilizo esto en el daytrading, y lo llamo "Trailing Profit". Sin embargo, no utilizo el trailing stop para el trading activo, porque es una forma de minimizar el beneficio.

2) También tengo una pequeña idea. A veces es desagradable ver como el beneficio disminuye y se mueve la posición abierta a la pérdida, después de que nos perdimos 1-2 puntos a TP. Por eso he empezado a practicar la siguiente solución: cuando quedan 1-2 pips antes del TP, envío una solicitud de cierre de la orden. En este caso la orden se cierra en el TP, o no se cierra en absoluto (ya que el precio rebotó y salió de la zona de deslizamiento), pero las órdenes se cierran más a menudo y trae más beneficios por un período.

 
rid писал (а) >>

Hay tres valores numéricos en la esquina izquierda del gráfico después de N=150 (número de barras). Por favor, díganme qué significan y cómo utilizarlos

El delta es la diferencia entre la línea media izquierda y la derecha.

3*S son tres desviaciones estándar

n es el número de barras en las que no se ha recalculado el canal de regresión.

Si el precio de la última barra está dentro de 3 desviaciones estándar (+-1,5), no se realiza ningún recálculo.

He tenido que entrar en el código (el indicador es demasiado antiguo, se desarrolló en 2006).

Si quiere cambiar la información emitida, puede hacerlo

 
¡BIEN! Gracias.
 
Vinin писал (а) >>

Tuve que entrar en el código (el indicador es demasiado viejo, se hizo en 2006)

Si quieres cambiar la información mostrada, puedes hacerlo.

Hay una modesta petición. Si no te importa. ¿Cómo escribir una expresión iCustom para este indicador?

Al menos para TODAS las líneas amarillas y para la línea central ?

¡No puedo resolverlo por mí mismo!

 
rid писал (а) >>

Hay una humilde petición. Si no es difícil. ¿Cómo grabar la expresión iCustom para este indicador?

Al menos para TODAS las líneas amarillas y para la línea central ?

No puedo resolverlo por mí mismo.

Si lo necesitas, puedo buscar en las pilas el indicador adecuado o hacer uno. Y cómo trabajar con él en el Asesor de Expertos - sólo todos los cálculos en él (Asesor de Expertos).

Razón de la queja: