¿Cómo codificar? - página 195

 
kipper:
Lo que sucede es que el programa hace todo lo que se espera cuando la cifra es menor de 15 se mantiene AZUL, no estoy seguro de lo que he hecho mal, estoy esperando que alguien podría arrojar algo de luz para mí.

Aquí está el código que tengo 4 los colores

Prueba esto:

if(sym_1 85) color_1 = Red; else color_1 = Blue;

if(sym_2 85) color_2 = Red; else color_2 = Blue;

if(sym_3 85) color_3 = Red; else color_3 = Blue;

if(sym_4 85) color_4 = Red; else color_4 = Blue;
 

"bar" es el desplazamiento desde la barra actual:

0 - para la barra actual(abierta)

1 - barra anterior ("cerrada").

grstaka:
Gracias!!!! ¿Qué significa la barra? ¿Es +1 -1 barra?
 

Gracias por tu ayuda Roger, te lo agradezco

 

Ayuda para crear un indicador de ob/os

Estoy buscando a alguien con conocimientos de codificación para que me ayude a crear un indicador de sobrecompra/sobreventa que tome la diferencia de precios de 2 pares y muestre el resultado. Debería ser bastante sencillo pero no soy programador así que no estoy muy seguro. ¿Alguien está interesado en probar esto por mí? Si es así que me haga saber o si alguien sabe de uno ya que sería grande también. He buscado pero no he visto nada que haga esto.

 

Pips hasta la llamada de margen

¿Alguien sabe cómo calcular el número de pips que puede tener una orden hasta que se produzca una llamada de margen en la posición? Suponiendo una sola posición abierta a la vez.

Estoy seguro de que hay una manera, pero no he sido capaz de averiguar.

 

Señales de alerta sintonizadas con el comercio - ¿Cómo hacerlo?

Hola,

Tengo un indicador que muestra flechas de comercio, azul para comprar y rosa para vender. Necesito una orden de compra y una orden de venta junto con una señal de sonido. Por lo tanto, sólo hay 1 comercio para un par en todo momento y el comercio actual se cierra cuando la flecha opuesta hows y también un nuevo comercio como por la flecha. ¿Dónde y cómo puedo modificar el código? Adjuntando el código aquí. Gracias por su ayuda.

/*

+------------------------------------------------------------------+

| |

+------------------------------------------------------------------+

*/

#property copyright "Copyright)"

#property link "http://"

#property indicator_chart_window

#property indicator_buffers 2

#property indicator_color1 DodgerBlue

#property indicator_width1 3

#property indicator_color2 Magenta

#property indicator_width2 3

extern string note1 = "First Moving Average";

extern int MA1 = 10;

extern string note2 = "0=sma, 1=ema, 2=smma, 3=lwma";

extern int MA1Mode = 0; //0=sma, 1=ema, 2=smma, 3=lwma

extern string note3 = "--------------------------------------------";

extern string note4 = "Second Moving Average";

extern int MA2 = 50;

extern string note5 = "0=sma, 1=ema, 2=smma, 3=lwma";

extern int MA2Mode = 0; //0=sma, 1=ema, 2=smma, 3=lwma

extern string note6 = "--------------------------------------------";

extern string note7 = "Arrow Type";

extern string note8 = "0=Thick, 1=Thin, 2=Hollow, 3=Round";

extern string note9 = "4=Fractal, 5=Diagonal Thin";

extern string note10 = "6=Diagonal Thick, 7=Diagonal Hollow";

extern string note11 = "8=Thumb, 9=Finger";

extern int ArrowType=2;

extern string note12 = "--------------------------------------------";

extern string note13 = "turn on Alert = true; turn off = false";

extern bool AlertOn = true;

extern string note14 = "--------------------------------------------";

extern string note15 = "send Email Alert = true; turn off = false";

extern bool SendAnEmail=false;

double CrossUp[];

double CrossDown[];

string AlertPrefix, MA1short_name, MA2short_name;

string GetTimeFrameStr() {

switch(Period())

{

case 1 : string TimeFrameStr="M1"; break;

case 5 : TimeFrameStr="M5"; break;

case 15 : TimeFrameStr="M15"; break;

case 30 : TimeFrameStr="M30"; break;

case 60 : TimeFrameStr="H1"; break;

case 240 : TimeFrameStr="H4"; break;

case 1440 : TimeFrameStr="D1"; break;

case 10080 : TimeFrameStr="W1"; break;

case 43200 : TimeFrameStr="MN1"; break;

default : TimeFrameStr=Period();

}

return (TimeFrameStr);

}

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

//| Custom indicator initialization function |

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

int init()

{

//---- indicators

if (ArrowType == 0) {

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0, 233);

SetIndexStyle(1,DRAW_ARROW);

SetIndexArrow(1, 234);

}

else if (ArrowType == 1) {

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0, 225);

SetIndexStyle(1,DRAW_ARROW);

SetIndexArrow(1, 226);

}

else if (ArrowType == 2) {

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0, 241);

SetIndexStyle(1,DRAW_ARROW);

SetIndexArrow(1, 242);

}

else if (ArrowType == 3) {

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0, 221);

SetIndexStyle(1,DRAW_ARROW);

SetIndexArrow(1, 222);

}

else if (ArrowType == 4) {

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0, 217);

SetIndexStyle(1,DRAW_ARROW);

SetIndexArrow(1, 218);

}

else if (ArrowType == 5) {

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0, 228);

SetIndexStyle(1,DRAW_ARROW);

SetIndexArrow(1, 230);

}

else if (ArrowType == 6) {

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0, 236);

SetIndexStyle(1,DRAW_ARROW);

SetIndexArrow(1, 238);

}

else if (ArrowType == 7) {

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0, 246);

SetIndexStyle(1,DRAW_ARROW);

SetIndexArrow(1, 248);

}

else if (ArrowType == 8) {

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0, 67);

SetIndexStyle(1,DRAW_ARROW);

SetIndexArrow(1, 68);

}

else if (ArrowType == 9) {

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0, 71);

SetIndexStyle(1,DRAW_ARROW);

SetIndexArrow(1, 72);

}

SetIndexBuffer(0, CrossUp);

SetIndexBuffer(1, CrossDown);

//---- indicator short name

switch(MA1Mode)

{

case 1 : MA1short_name="EMA"; break;

case 2 : MA1short_name="SMMA"; break;

case 3 : MA1short_name="LWMA"; break;

default :

MA1Mode=0;

MA1short_name="SMA";

}

switch(MA2Mode)

{

case 1 : MA2short_name="EMA"; break;

case 2 : MA2short_name="SMMA"; break;

case 3 : MA2short_name="LWMA"; break;

default :

MA2Mode=0;

MA2short_name="SMA";

}

AlertPrefix=Symbol()+" ("+GetTimeFrameStr()+"): ";

//----

return(0);

}

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

//| Custom indicator deinitialization function |

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

int deinit()

{

//----

//----

return(0);

}

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

bool NewBar()

{

static datetime lastbar;

datetime curbar = Time[0];

if(lastbar!=curbar)

{

lastbar=curbar;

return (true);

}

else

{

return(false);

}

}

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

//| Custom indicator iteration function |

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

int start() {

int limit, i, counter;

double MA1now, MA2now, MA1previous, MA2previous, MA1after, MA2after;

double Range, AvgRange;

int counted_bars=IndicatorCounted();

//---- check for possible errors

if(counted_bars<0) return(-1);

//---- last counted bar will be recounted

if(counted_bars>0) counted_bars--;

limit=Bars-counted_bars;

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

counter=i;

Range=0;

AvgRange=0;

for (counter=i ;counter<=i+9;counter++)

{

AvgRange=AvgRange+MathAbs(High[counter]-Low[counter]);

}

Range=AvgRange/10;

MA1now = iMA(NULL, 0, MA1, 0, MA1Mode, PRICE_CLOSE, i);

MA1previous = iMA(NULL, 0, MA1, 0, MA1Mode, PRICE_CLOSE, i+1);

MA1after = iMA(NULL, 0, MA1, 0, MA1Mode, PRICE_CLOSE, i-1);

MA2now = iMA(NULL, 0, MA2, 0, MA2Mode, PRICE_CLOSE, i);

MA2previous = iMA(NULL, 0, MA2, 0, MA2Mode, PRICE_CLOSE, i+1);

MA2after = iMA(NULL, 0, MA2, 0, MA2Mode, PRICE_CLOSE, i-1);

if ((MA1now > MA2now) && (MA1previous MA2after)) {

CrossUp = Low - Range*1.5;

if ( NewBar())

{

if (AlertOn) {

Alert(AlertPrefix+MA1short_name+" ("+MA1+") "+"crosses UP " + MA2short_name+" ("+MA2+")");

}

if (SendAnEmail) {

SendMail(AlertPrefix,MA1short_name+" ("+MA1+") "+"crosses UP " + MA2short_name+" ("+MA2+")");

}

}

}

else if ((MA1now MA2previous) && (MA1after < MA2after)) {

CrossDown = High + Range*1.5;

if (NewBar())

{

if (AlertOn) {

Alert(AlertPrefix+MA1short_name+" ("+MA1+") "+"crosses DOWN " + MA2short_name+" ("+MA2+")");

}

if (SendAnEmail) {

SendMail(AlertPrefix,MA1short_name+" ("+MA1+") "+"crosses DOWN " + MA2short_name+" ("+MA2+")");

}

}

}

}

return(0);

}

 

Parece un simple indicador de cruce de MA. Compruebe el enlace en mi sig para un tutorial gratuito que le permitirá construir un MA cruz EA.

Buena suerte

Lux

 

Hola seniore el EA puede hacer el robot.. modelo también martiangle

1.Looping -> Establecer el robot cuántas veces la vuelta

2.First Order Auto -> Orden de compra o venta en base a la tendencia del mercado pequeño en ese momento, entonces auto op al lado de la última compra o venta.

3.Lote de inicio -> establecer el lote

4.Range -> La distancia entre la posición que ordena uno con la otra posición

5.Rangeincrease--> desarrollo de la distancia entre la posición de la otra con las otras posiciones de acuerdo con el crecimiento múltiple

6.Start level increase -> dibaris para habilitar los parámetros de la función rangeincrease

7.Multiplicador -> lote de multiplicación en el siguiente orden

8.TPmoney -> cerrar todas las ordenes cuando se alcance el beneficio del dinero en ese momento.

gracias

 

Ayuda EA

mirak:
Hola seniore el EA puede hacer el robot.. modelo también martiangle

1.Looping -> Establecer el robot cuántas veces la vuelta

2.First Order Auto -> Ordenar la compra o la venta en base a la tendencia del mercado pequeño en ese momento, entonces auto op al lado de la última compra o venta.

3.Lote de inicio -> establecer el lote

4.Range -> La distancia entre la posición que ordena uno con la otra posición

5.Rangeincrease--> desarrollo de la distancia entre la posición de la otra con las otras posiciones de acuerdo con el crecimiento múltiple

6.Start level increase -> dibaris para habilitar los parámetros de la función rangeincrease

7.Multiplicador -> lote de multiplicación en el siguiente orden

8.TPmoney -> cerrar todas las ordenes cuando se alcance el beneficio del dinero en ese momento.

gracias

Uppp plsss

 

iTime

aquí está el código para obtener el tiempo de inicio de la barra trabajando en MTF

GetTime =(iTime(Symbol(),60,i)); está bien

¿Cómo podemos obtener la hora de finalización de la barra?

Gracias