Ayuda a la codificación - página 504

 
candyman752:
esta pobre alma necesita tu ayuda

Ok. He vuelto a añadir la parte de las condiciones de cierre(adjunta). Los errores que aparecen al compilar el original son los mismos que los que he ajustado. Ahora volviendo a las preguntas originales: ¿he logrado escribir el código de tal manera que fullfil las condiciones que puse cuando por primera vez publicado cuando empecé mi solicitud en este. Que es comprar en RSI 6 Stoch 16.3.3 EMA 5 por encima del nivel ema50 por encima de 70 y vender cuando

rsi 6 stoch16.3.3 ema5below ema50 nivel por debajo de 30. también podría interpretar las condiciones de cierre para mí. lo que hice para corregir el archivo fue abrir los archivos en el editor de meta y luego hizo que la pantalla muestra un lado un archivo y otro archivo, en forma de baldosas, al lado de él y sólo fue línea por línea para ver qué líneas faltaban o diferentes. No puedo codificar pero puedo intentar descifrar lo que alguien ha hecho y por sentido común cambiar una o dos cosas. eres una estrella mladen

Archivos adjuntos:
 
candyman752:
Ok. He vuelto a añadir la parte de las condiciones de cierre(adjunta). Los errores que aparecen al compilar el original son los mismos que los que he ajustado. Ahora volviendo a las preguntas originales: ¿he conseguido escribir el código de tal manera que se cumplan las condiciones que establecí la primera vez que publiqué cuando empecé mi petición sobre esto? Que es comprar en RSI 6 Stoch 16.3.3 EMA 5 por encima del nivel de ema50 por encima de 70 y vender cuando rsi 6 stoch16.3.3 ema5below nivel de ema50 por debajo de 30. también podría interpretar las condiciones de cierre para mí. lo que hice para corregir el archivo fue abrir los archivos en meta editor y luego hizo que la pantalla muestra un lado un archivo y otro archivo, en forma de baldosas, al lado de él y sólo fue línea por línea para ver qué líneas faltaban o diferente. No puedo codificar pero puedo intentar descifrar lo que alguien ha hecho y por sentido común cambiar una o dos cosas. eres una estrella mladen

candyman752

Prueba el EA. Esas son advertencias del compilador, no errores. Independientemente de esas advertencias el EA debería funcionar

 
mladen:
candyman752 Pruebe el EA. Esas son advertencias del compilador, no errores. Independientemente de esas advertencias el EA debería funcionar

Supongo que su silencio en la confirmación es la confirmación de que he logrado el código para hacer lo siguiente: RSI 6 stoch 16-3-3 / 5EMA 50EMA.over compró el nivel 70 oversold nivel 30. Debería comprar cuando la 5ema se mueva por encima de la 50 ema y el rsi y stoch estén por encima de 70 y debería vender cuando la 5 ema esté por debajo de la 50ema y el rsi y stoch estén por debajo de 30.

 

Hola madlen, déjame poner mi solicitud de otra manera

en el EA original las condiciones de compra o venta eran

if(EMA5aEMA10&&RSI1>RSILevel&&STOS<STOM&&STOS<Overbought&&STOM<Overbought)SBUY="true";

if(EMA5a>EMA10a&&EMA5<EMA10&&RSI1STOM&&STOS>Sobreventa&&STOM>Sobreventa)SSEL="true";

Luego cambié el código de la siguiente manera

if(EMA5aEMA50&&RSI1>RSILevelb&&STOSOverbought&&STOM>Overbought)SBUY="true";

if(EMA5a>EMA50a&&EMA5<EMA50&&RSI1STOM&&STOS<Sobrecomprado&&STOM<Sobrecomprado)SSEL="true";

RSI levelb=70 RSI levels=30 sobrecompra=70 sobreventa=30.

El cambio que hice en el código coincide con las condiciones que dije antes. comprar cuando 5ema está por encima de 5ema rsi por encima de 70 estocástico por encima de 70 y viceversa

 
candyman752:
Entiendo que su silencio en la confirmación es la confirmación de que he logrado el código para hacer lo siguiente: RSI 6 stoch 16-3-3 / 5EMA 50EMA.over compró el nivel 70 nivel de sobreventa 30. Debe comprar cuando 5ema se mueve por encima de 50 ema y rsi y stoch están por encima de 70 y debe vender cuando 5 ema está por debajo de 50ema y rsi y stoch están por debajo de 30.

candyman752

Lo que he dicho es que la lista que muestra el compilador después de la compilación sólo contiene advertencias que no afectan a la ejecución del EA (cualquier EA). No he comprobado la lógica ni he probado el EA. Por eso he dicho que hay que probarlo.

En cuanto al código, funcionará. Depende de tu trabajo afinarlo y ajustarlo donde sea necesario

feliz codificación

 

Codificadores,

Estoy experimentando algunos problemas con el siguiente código.

Durante mucho tiempo estoy usando 2 indicadores como filtro. Ellos muestran la tendencia en un histograma en la segunda ventana.

Traté de crear un tercer indicador que combina ambos indicadores en un histograma.

Desafortunadamente no funciona, he llamado a ambos indicadores con la función iCustom y uso el buffer correcto. Pero el histograma se queda en blanco.

Para encontrar el problema he sustituido las funciones iCustom por una función iMA. En ese momento el código funcionó y el histograma mostró los colores correctos . Así que tiene algo que ver con las funciones iCustom o las sentencias if.

Espero que alguien pueda ayudarme.

Gracias de antemano

#property copyright ""#property link ""

#property version "1.00"

#property strict

#property indicator_separate_window

#property indicator_buffers 2

#property indicator_color1 LimeGreen

#property indicator_color2 Red

#property indicator_width1 3

#property indicator_width2 3

#property indicator_minimum 0

#property indicator_maximum 1

double Groen[];

double Rood[];

double zibo1g[],zibo1r[],zibo2g[],zibo2r[];

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

//| Custom indicator initialization function |

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

int OnInit()

{

SetIndexBuffer(0,Groen);

SetIndexStyle(0,DRAW_HISTOGRAM);

SetIndexLabel(0,"Groen");

SetIndexBuffer(1,Rood);

SetIndexStyle(1,DRAW_HISTOGRAM);

SetIndexLabel(1,"Rood");

IndicatorShortName("Zibo Combo");

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 counted_bars=IndicatorCounted();

int limit=Bars-counted_bars;

double dResult = 1;

for(int i=0; i<limit; i++){

zibo1g=iCustom(NULL,0,"zibo1",0,i); //green histogram

zibo1r=iCustom(NULL,0,"zibo1",1,i); //red histogram

zibo2g=iCustom(NULL,0,"zibo2",0,i); //green histogram

zibo2r=iCustom(NULL,0,"zibo2",1,i); //red histogram

if(zibo1g != EMPTY_VALUE && zibo2g != EMPTY_VALUE)

Groen = dResult;

else if(zibo1r != EMPTY_VALUE && zibo2r != EMPTY_VALUE)

Rood = dResult;

}

return(rates_total);

}
 

m1-red.mq4

Hola a todos. Necesito ayuda para arreglar este indicador .. en la práctica necesidad de añadir un (20-periodo MA) con la misma función que el existente, y eliminar eliminar las cajas de color, no se utiliza

Siempre pido perdón por mi mal inglés

Archivos adjuntos:
m1-red.mq4  3 kb
 
xtractalpha:
Codificadores,

Estoy experimentando algunos problemas con el siguiente código.

Durante mucho tiempo estoy usando 2 indicadores como filtro. Ellos muestran la tendencia en un histograma en la segunda ventana.

Traté de crear un tercer indicador que combina ambos indicadores en un histograma.

Desafortunadamente no funciona, he llamado a ambos indicadores con la función iCustom y uso el buffer correcto. Pero el histograma se queda en blanco.

Para encontrar el problema he sustituido las funciones iCustom por una función iMA. En ese momento el código funcionó y el histograma mostró los colores correctos . Así que tiene algo que ver con las funciones iCustom o las sentencias if.

Espero que alguien pueda ayudarme.

Gracias de antemano

#property copyright ""#property link ""

#property version "1.00"

#property strict

#property indicator_separate_window

#property indicator_buffers 2

#property indicator_color1 LimeGreen

#property indicator_color2 Red

#property indicator_width1 3

#property indicator_width2 3

#property indicator_minimum 0

#property indicator_maximum 1

double Groen[];

double Rood[];

double zibo1g[],zibo1r[],zibo2g[],zibo2r[];

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

//| Custom indicator initialization function |

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

int OnInit()

{

SetIndexBuffer(0,Groen);

SetIndexStyle(0,DRAW_HISTOGRAM);

SetIndexLabel(0,"Groen");

SetIndexBuffer(1,Rood);

SetIndexStyle(1,DRAW_HISTOGRAM);

SetIndexLabel(1,"Rood");

IndicatorShortName("Zibo Combo");

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 counted_bars=IndicatorCounted();

int limit=Bars-counted_bars;

double dResult = 1;

for(int i=0; i<limit; i++){

zibo1g=iCustom(NULL,0,"zibo1",0,i); //green histogram

zibo1r=iCustom(NULL,0,"zibo1",1,i); //red histogram

zibo2g=iCustom(NULL,0,"zibo2",0,i); //green histogram

zibo2r=iCustom(NULL,0,"zibo2",1,i); //red histogram

if(zibo1g != EMPTY_VALUE && zibo2g != EMPTY_VALUE)

Groen = dResult;

else if(zibo1r != EMPTY_VALUE && zibo2r != EMPTY_VALUE)

Rood = dResult;

}

return(rates_total);

}

Tus matrices zibo1g[],zibo1r[],zibo2g[] y zibo2r[] son siempre matrices de tamaño cero (nunca se inicializan - se redimensionan a elementos de barra)

Lo mejor es que los declares como buffers adicionales si no estás familiarizado con cómo trabajar con arrays en mql

 
morenokosta:
m1-red.mq4

Hola a todos. Necesito ayuda para arreglar este indicador .. en la práctica necesidad de añadir un (20-periodo MA) con la misma función que el existente, y eliminar eliminar las cajas de color, no se utiliza

Siempre pido perdón por mi mal inglés

En el que has adjuntado no hay cajas de color. De todas formas prueba esto : m1-red_1.m q4

Archivos adjuntos:
m1-red_1.mq4  3 kb
 

Gracias Mladen por estar siempre disponible.

en el post anterior me preguntaba si era posible añadir otra MA de 20 periodos con la misma fórmula

Razón de la queja: