Ayuda a la codificación - página 460

 
mladen:
3 -> es el máximo deslizamiento

el primer 0 -> es el stop loss (tiene que rellenarlo con el precio de stop loss que desee para la orden)

segundo 0 -> es el take profit (tiene que llenarlo con el precio de take profit que desea para la orden)

_________________

No se puede colocar 10, 10 allí

El stop loss debe ser el precio de apertura de la orden +- stop loss en pips (puntos)

La misma regla es válida para el take profit - precio de apertura de la orden +- take profit en pips (puntos)

Muchas gracias, mladen.

Hoy he aprendido la codificación de su enseñanza.

Me siento muy feliz.

Tengo muchas codificaciones que necesito aprender.

Gracias.

 
hock87:
Muchas gracias, mladen.

Hoy he aprendido la codificación de su enseñanza.

Me siento muy feliz.

Tengo muchos códigos que necesito aprender.

Gracias.

Solo hay que ser terco (ser terco es la mejor cualidad que puede tener un codificador - cuando codificas durante un par de años solo eso te puede empujar hacia adelante)

 

Sólo estoy revisando esto - he estado fuera durante unos días

pipmagnet:
Siento no haber añadido esto al post anterior - esto es lo que estoy preguntando - gracias de antemano por su ayuda/respuesta.
 

Hola mladen ,

¿Puedes ayudarme a ver si el código es correcto? Por favor, dame algún consejo

double MA_Signal = iMA(Symbol(),0,FastMa,FastMaShift,FastMaMode,FastMaPrice,0);

double MA_Signala = iMA(Symbol(),0,UpperMa,UpperMaShift,UpperMaMode,UpperMaPrice,0);

double MA_Signalb = iMA(Symbol(),0,LowerMa,LowerMaShift,LowerMaMode,LowerMaPrice,0);

double MACD = iCustom(Symbol(),0,"MyMACD",Macd_fast,Macd_slow,Macd_signal,Macd_price,MODE_MAIN,i);

double MACDsig = iCustom(Symbol(),0,"MyMACD",Macd_fast,Macd_slow,Macd_signal,Macd_price,MODE_SIGNAL,i);

double Bbands = iCustom(Symbol(),0,"BBands_Stop_v2",Length,Deviation,MoneyRisk,PRICE_CLOSE,2);

double Ma_Bid_Diff = MathAbs(MA_Signal - Bid)/vPoint;

if ( MA_Signal>MA_Signala ) if ( MACD>0 && MACD>MACDsig ) if (Bbands MAOpenDistance && Bid > MA_Signala ) Signal = 1;

if ( MA_Signal<MA_Signalb ) if ( MACD<0 && MACDMA_Signal) if ( Ma_Bid_Diff > MAOpenDistance && Bid < MA_Signalb ) Signal = -1;

Una pregunta más es sobre el "BBands_Stop_v2", detrás del número es para qué?

Siento las molestias porque he aprendido a codificar, muchas cosas me confunden.

 
stevenpun:
Hola mladen ,

¿Puede ayudarme a ver si el código es correcto? Por favor, aconsejadme.

double MA_Signal = iMA(Symbol(),0,FastMa,FastMaShift,FastMaMode,FastMaPrice,0);

double MA_Signala = iMA(Symbol(),0,UpperMa,UpperMaShift,UpperMaMode,UpperMaPrice,0);

double MA_Signalb = iMA(Symbol(),0,LowerMa,LowerMaShift,LowerMaMode,LowerMaPrice,0);

double MACD = iCustom(Symbol(),0,"MyMACD",Macd_fast,Macd_slow,Macd_signal,Macd_price,MODE_MAIN,i);

double MACDsig = iCustom(Symbol(),0,"MyMACD",Macd_fast,Macd_slow,Macd_signal,Macd_price,MODE_SIGNAL,i);

double Bbands = iCustom(Symbol(),0,"BBands_Stop_v2",Length,Deviation,MoneyRisk,PRICE_CLOSE,2);

double Ma_Bid_Diff = MathAbs(MA_Signal - Bid)/vPoint;

if ( MA_Signal>MA_Signala ) if ( MACD>0 && MACD>MACDsig ) if (Bbands MAOpenDistance && Bid > MA_Signala ) Signal = 1;

if ( MA_Signal<MA_Signalb ) if ( MACD<0 && MACDMA_Signal) if ( Ma_Bid_Diff > MAOpenDistance && Bid < MA_Signalb ) Signal = -1;

Una pregunta más es sobre el "BBands_Stop_v2", detrás del número es para qué?

Disculpa las molestias porque he estado aprendiendo a codificar, muchas cosas me han confundido

stevenpun

Las llamadas a MyMACD abd BBands_Stop_V2 no son correctas. Los dos últimos parámetros para los indicadores personalizados deben ser el número del buffer y el desplazamiento : necesitas un parámetro más antes del último que especificará el valor del buffer a recuperar

 
mladen:
stevenpun Las llamadas a MyMACD abd BBands_Stop_V2 no son correctas. Los dos últimos parámetros para los indicadores personalizados deben ser el número de búfer y el desplazamiento: se necesita un parámetro más antes del último que especificará el valor del búfer a recuperar

Gracias por tu respuesta y por la respuesta que recibí, pero todavía estoy confundido.

Ahora utilizo el buffer 4 y 5 para identificar la tendencia, pero ¿cómo sé cuál es el número de cambio que necesito poner?

double Bbands = iCustom(Symbol(),0,"BBands_Stop_v2",Length,Deviation,MoneyRisk,PRICE_CLOSE,4,1); double Bbands2 = iCustom(Symbol(),0,"BBands_Stop_v2",Length,Deviation,MoneyRisk,PRICE_CLOSE,5,2);

En la parte de la señal, ¿es necesario cambiarla?

Sobre el "MyMacd" simplemente lo ignoro, porque solo cambio el precio de cierre del macd clásico al precio de apertura para probarlo.

 
stevenpun:
Gracias por tu respuesta y por conseguir alguna respuesta, pero todavía tengo confusión.

Ahora utilizo el buffer 4 y 5 para identificar la tendencia, ¿pero cómo sé cuál es el número de desplazamiento que tengo que poner?

double Bbands = iCustom(Symbol(),0,"BBands_Stop_v2",Length,Deviation,MoneyRisk,PRICE_CLOSE,4,1); double Bbands2 = iCustom(Symbol(),0,"BBands_Stop_v2",Length,Deviation,MoneyRisk,PRICE_CLOSE,5,2);

En la parte de la señal, ¿es eso lo que tengo que cambiar?

Sobre el "MyMacd" simplemente ignóralo, porque solo cambio el precio de cierre del macd clásico por el precio de apertura para probarlo.

stevenpun

El último número de la llamada iCustom() es el desplazamiento

Si quieres leer el valor de la barra actual del indicador personalizado usa 0. Si quieres usar la primera barra cerrada usa 1 para el shift, y así sucesivamente ...

 
mladen:
stevenpun

El último número en la llamada a iCustom() es el turno

Si quieres leer el valor de la barra actual del indicador personalizado usa 0. Si quieres usar la primera barra cerrada usa 1 para el desplazamiento, y así sucesivamente...

Entonces, ¿los dos números no pueden ser iguales, verdad?

¿Y la parte de la señal que tengo que cambiar?

 
stevenpun:
Entonces, ¿el número 2 no puede ser el mismo? y la parte de la señal que necesito cambiar?

stevenpun

La forma más sencilla de utilizar el indicador BBands_Stop_v2 es utilizar los buffers 2 y 3. Si el buffer 2 es > -1, entonces es señal para abajo. Si el buffer 3 es > -1, entonces es señal para arriba. Y debes usar el mismo valor de desplazamiento en ese caso

 
mladen:
stevenpun La forma más sencilla de utilizar el indicador BBands_Stop_v2 es utilizar los buffers 2 y 3. Si el buffer 2 es > -1, entonces es señal para bajar. Si el buffer 3 es > -1, entonces es señal para arriba. Y debe usar el mismo valor de desplazamiento en ese caso

Gracias , en tsd realmente se puede aprender mucho de codificación .

Al empezar me parece muy difícil codificar para un simple ea , pero ahora me parece muy interesante

Razón de la queja: