¿Cómo codificar? - página 88

 
flourishing:
¿Cómo hacer que comment(1 / 2) muestre 0.5? Gracias.

Por favor, pruebe esto:

Comment(DoubleToStr(1/2, 1));

El segundo argumento de la función DoubleToStr() es el número de dígitos después del punto decimal.

 
ak97052d:
hola

cómo codificar esto:

Necesito extraer alguna información de la última operación cerrada,

y después usar alguna información de esta última operación

Ej:

si el beneficio de la última operación >0 'lasttradeprofit = 1'

y si la última operación <=0 'lasttradeprofit = 0'

lasttradeprofit = 1 // si última operación >0

lasttradeprofit = 0 // si última operación <=0

gracias

Es fácil escanear el historial y comprobar OrderCloseTime() :

datetime LastCloseTime;

bool LastTradeIsProfit;

for(int i = 0; i > OrderHistoryTotal(), i ++)

{

OrderSelect(i, SELECT_BY_POS, MODE_HISTORY);

if(OrderMagicNumber() != Magic) continue;

if(OrderCloseTime() > LastCloseTime)

{

LastCloseTime = OrderCloseTime();

LastTradeIsProfit = (OrderProfit() > 0);

}

}
 
ak97052d:
¡hola prueba esto !

gracias por edite expert

puede cambiar este ea usando mi idea

de mi idea después de abrir dos órdenes explicamos esta información

1- todas las ordenes tienen stop loss fijo igual 10pip

2- si la primera orden va a la apertura de beneficios 2* misma esta orden pero tp=primera orden tp-fix sl

3- traling sl al lugar de apertura de la segunda orden

ejemplo:

eur/usd

el primer precio es : 1.5200

1-abrir dos ordenes ( buy@ 1.5200 0.1 lot size sl=10 tp 50 & sell@1.5200 0.1 lot size sl=10 tp=50)

el precio se va a 15210

2-en este momento (mi orden de venta se cerrará y abrirá una segunda orden de compra de 0.2 lotes por sl=10 tp=40 y la primera orden sl traling a 1.5210 )

el precio va a 1.5220

3-En este momento (abriendo una orden de compra de 0.4 lotes por sl=10 tp=30 y dos órdenes anteriores sl traling a 1.5220)

4-.....

5....

si el precio llega a 1.5250 todas las ordenes se cerraran por 560$.

pero en este momento nuestras ordenes sl solo pierden 60$.

este metodo tiene el mejor riesgo

 
ak97052d:
¡hola prueba esto !

Disculpe este experto sl tiene que utilizar esta fórmula para tener resultado de beneficio en elfix sl tienen mal resultado

orden sl = ((MaxTrades*MinGS)+SL) - (n*MinGS)

ejemplo de esta información

extern int MinGS=5;

extern int TP=20;

extern int SL=10;

extern double lot=0.10;

extern int MaxTrades=7;

extern int RegularSpread=2;

extern double Multiplier=2;

extern double LotInc=0;

extern double MarginLevelAlert=1000;

tenemos

sl de primer orden= ((7*5)+10)-(0*5)=40

sl de segundo orden= ((7*5)+10)-(1*5)=35

y otros sl son

35

30

25

20

15

 
 

Pregunta de Wolfe

wolfe:
¿Alguien sabe cómo codificar para que cuando se llame a un indicador en un EA se adjunte automáticamente el indicador llamado al gráfico al que se adjunta el EA? De esta manera sería visualmente en el mismo tiempo exacto que lo que está siendo leído por su EA. Gracias.

La respuesta anterior estaba incompleta.

Si el indicador es estándar en MT4, se mostrará en el lugar normal. Si es llamado por iCustom, también se mostrará, si está bien codificado.

Los siguientes EAs tienen incluso los indicadores muestran en la ventana del gráfico. Estúdielos para aprender cómo:

bouncingPipEA_mpowerV42.mq4

bouncingPipEA_BigBear_v23.mq4

Big Be

 

Spread en orden pendiente

Hola amigos,

Hice un EA que calcula el hi-low diario entre algún período, y luego colocar órdenes pendientes buystop/sellstop, que expirará en 12 horas.

Lo ejecuté en el par GBP-JPY (8 pips de spread en mi broker)

int ticket, SL, TP; //SL= StopLoss , TP= TakeProfit

int Spacing = 10; // Spacing Pips

double vAsk = HighestPrice+Spacing*Point; // raise/lower 10 pips for OP Buystop/Sellstop , HighestPrice= some highest price

ticket=OrderSend(Symbol(),OP_BUYSTOP,Lots,vAsk,0,vAsk-SL*Point,vAsk+TP*Point,"Pending Order BUY STOP",20070125,CurTime() + 12 * 3600,Green);

El resultado, la orden pendiente Buy Stop fue ejecutada, incluso el precio no la tocó. He rastreado la OP Buy Stop, colocada en el precio 204.08, pero fue ejecutada cuando el precio está en 204.00. Parece que el factor Spread está involucrado.

Mi amigo me dijo que la orden pendiente manual Buystop/Sellstop se ejecuta sin factor de propagación, pero ¿por qué es diferente con la colocación de la orden por EA?

Entonces, ¿hay algún error en mi código?

Gracias de antemano.

 
mastoto:
Hola amigos,

Hice un EA que calcula el hi-low diario entre algún período, y luego colocar órdenes pendientes buystop/sellstop, que expirará en 12 horas.

Lo ejecuté en el par GBP-JPY (8 pips de spread en mi broker)

int ticket, SL, TP; //SL= StopLoss , TP= TakeProfit

int Spacing = 10; // Spacing Pips

double vAsk = HighestPrice+Spacing*Point; // raise/lower 10 pips for OP Buystop/Sellstop , HighestPrice= some highest price

ticket=OrderSend(Symbol(),OP_BUYSTOP,Lots,vAsk,0,vAsk-SL*Point,vAsk+TP*Point,"Pending Order BUY STOP",20070125,CurTime() + 12 * 3600,Green);

El resultado, la orden pendiente Buy Stop fue ejecutada, incluso el precio no la tocó. He rastreado la OP Buy Stop, colocada en el precio 204.08, pero fue ejecutada cuando el precio está en 204.00. Parece que el factor Spread está involucrado.

Mi amigo me dijo que la orden pendiente manual Buystop/Sellstop se ejecuta sin factor de propagación, pero ¿por qué es diferente con la colocación de la orden por EA?

Entonces, ¿hay algún error en mi código?

Gracias de antemano.

Si su "HighestPrice" es un precio BID como lo son en todos los gráficos, probablemente tenga que añadir el spread. Cualquier orden de COMPRA es activada por un precio de COMPRA.

 

como obtener la informacion en el grafico principal

He descargado un indicador, que muestra la flecha verde / roja cuando la señal de compra / venta viene.

ahora quiero programar mi propio EA basado en este indicador.

pero solo tengo el archivo ex4 de este indicador (sin código fuente)

Quiero que mi EA lea la flecha del indicador en el gráfico principal y envíe la orden de compra/venta (flecha verde==>compra, flecha roja==>venta)

¿hay algún método para obtener la información de la flecha del indicador en el gráfico principal?

gracias

 
shanyang:
He descargado un indicador, que muestra la flecha verde/roja cuando la señal de compra/venta viene.

ahora quiero programar mi propio EA basado en este indicador.

pero solo tengo el archivo ex4 de este indicador(sin código fuente)

Quiero que mi EA lea la flecha del indicador en el gráfico principal y envíe la orden de compra/venta (flecha verde==>compra, flecha roja==>venta)

¿hay algún método para obtener la información de la flecha del indicador en el gráfico principal?

gracias

El EA tiene que llamar a las señales del indicador arriba/abajo con la función iCustom();. No necesitas el código fuente para hacer esto.

FerruFx