Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. En ninguna parte sin ti - 6. - página 582

 
Twilight:

Hola.


Comment("test"+test2,testJPY);

Comment("testJPY[1] = ",testJPY[1]);
De alguna manera, pruébalo.
 
r772ra:

Es algo así, pruébalo.


No, no entiendes la tarea.

Es necesario pasar el nombre de la variable o el valor de la misma, dependiendo de la situación.

 

¿Puede una variable ser asignado a ¿varios valores?


algo así como

int N=(1;2;5;9;15;19)

 
abeiks:

¿Es posible puede asignarse una sola variable a a una sola variable?


algo así como

int N=(1;2;5;9;15;19)

¿Y cómo puedo saber qué valor utilizar?

¿O querías declarar un array? Entonces int N[6] = {1, 2, 5, 9, 15, 19};

Yo no uso esas matrices, si me equivoco, que me corrija un entendido...


 
AlexeyVik:
¿Y cómo puedo saber qué valor utilizar?

¿O querías declarar un array? Entonces int N[6] = {1, 2, 5, 9, 15, 19};

Yo no uso esas matrices, si me equivoco, que alguien me corrija...



Gracias! Estoy pensando en utilizar esto en pruebas comouna restricción comercio en ciertos días del mes. ¡if(Day()==N[6]) !

 

¡Hola! Por favor, ayúdenme...

Cómo se puede crear una caja en un gráfico, en la que se puede colocar un segmento del mismo gráfico, conociendo las horas de inicio y fin del segmento.

Gracias...

 

Hola, podéis ayudar a añadir un asesor de martingala, para que en caso de una operación perdedora, la siguiente se abra con el doble de lote respecto a la anterior.

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

//| Prueba3.mq4 |

//| Popov Vladimir...

//| http://vk.com/id143715412 |

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

#property copyright "Popov Vladimir"

#enlace de propiedad "http://vk.com/id143715412"


extern double Lots = 0.1;

extern int TomaDeBeneficio = 130;

extern int StopLoss = 80;

extern int Deslizamiento = 5;

extern string comment = "Tma bot";

extern int Magia = 123;

cadena externa Indi = "Datos del indicador";

cadena externa TimeFrame = "marco temporal actual";

extern int MediaLongitud = 20;

extern int Precio = PRICE_CLOSE;

extern double ATRMultiplier = 2.0;

extern inttern ATRPeriod = 100;

extern bool Interpolar = true;

extern inttern Sangría = 5;


extern inttern KPeriod =5;

extern int DPeriod =3;

externo inttern Desaceleración =3;



doble PriceHigh, PriceLow, SL, TP, PriceMiddle, PriceBuy, StochasticHigh, StochasticLow, PriceSell;

doble HighesBuffer[];

doble LowesBuffer[];

int ticket1, ticket2;


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

//| función de inicialización de expertos |

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

int init()

{


si (Dígitos == 3 || Dígitos = 5)

{

TakeProfit *= 10;

StopLoss *= 10;

Deslizamiento *= 10;

}





return(0);

}

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

//| función de desinicialización experta |

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

int deinit()

{

//----

//----

return(0);

}

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

//| función de inicio experto |

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

int inicio()

{

PriceHigh = iCustom (Symbol (), 0, "Time", TimeFrame, HalfLength, Price, ATRMultiplier, ATRPeriod, Interpolate, 1, 0);

PriceLow = iCustom (Symbol (), 0, "Time", TimeFrame, HalfLength, Price, ATRMultiplier, ATRPeriod, Interpolate, 2, 0);

PriceMiddle = iCustom (Symbol (), 0, "Time", TimeFrame, HalfLength, Price, ATRMultiplier, ATRPeriod, Interpolate, 0, 0);

lotes dobles, Lote;

if (Bid >= PriceHigh && CountSell() == 0)

{

SL = NormalizeDouble(Bid+StopLoss*Point, Digits);

TP = NormalizeDouble(Bid-TakeProfit*Point, Digits);

ticket1 = OrderSend(Symbol(), OP_SELL, Lots, Bid, Slippage, 0, 0, comment, Magic, 0, Red);

si (ticket1 > 0)

{

if(OrderSelect(ticket1, SELECT_BY_TICKET, MODE_TRADES) == true)

OrderModify(ticket1, OrderOpenPrice(), SL, TP, 0);

PriceBuy = NormalizeDouble(OrderOpenPrice() + Indent*Point, Digits);

}

ticket2 = OrderSend(Symbol(), OP_BUYSTOP, Lots, PriceBuy, Slippage, 0, 0, comment, Magic, 0, Green);

si (ticket2 > 0)

{

if (OrderSelect(ticket2, SELECT_BY_TICKET, MODE_TRADES)==true)

{

SL = NormalizeDouble(PriceBuy - StopLoss * Point, Digits);

TP = NormalizeDouble(PriceBuy + TakeProfit * Point, Digits);

OrderModify(ticket2, OrderOpenPrice(), SL, TP, 0);

}

}

}


if(Ask <= PriceLow && Ask <= StochasticLow && CountBuy() == 0)

{

SL = NormalizeDouble(Ask-StopLoss*Point, Digits);

TP = NormalizeDouble(Ask+TakeProfit*Point, Digits);

ticket1 = OrderSend(Symbol(), OP_BUY, Lots, Bid, Slippage, 0, 0, comment, Magic, 0, Blue);

si (ticket1 > 0)

{

if(OrderSelect(ticket1, SELECT_BY_TICKET, MODE_TRADES) == true)

OrderModify(ticket1, OrderOpenPrice(), SL, TP, 0);

PriceSell = NormalizeDouble(OrderOpenPrice() - Indent*Point, Digits);

}

ticket2 = OrderSend(Symbol(), OP_SELLSTOP, Lots, PriceSell, Slippage, 0, 0, comment, Magic, 0, Orange);

si (ticket2 > 0)

{

if (OrderSelect(ticket2, SELECT_BY_TICKET, MODE_TRADES)==true)

{

SL = NormalizeDouble(PriceSell + StopLoss * Point, Digits);

TP = NormalizeDouble(PrecioVenta - TakeProfit * Punto, Dígitos);

OrderModify(ticket2, OrderOpenPrice(), SL, TP, 0);

}

}

}

if (Ask <= PriceMiddle && CountSell() > 0)

{

for(int i=Total de Pedidos()-1; i >=0; i--)

{

if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES) == true)

{

if(OrderMagicNumber() == Magic && OrderType() == OP_SELL)

OrderClose(OrderTicket(), OrderLots(), Ask, Slippage, Black);

}

}

}

if (Bid >= PriceMiddle && CountBuy() > 0)

{

for(i=Total de pedidos()-1; i >=0; i--)

{

if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES) == true)

{

if(OrderMagicNumber() == Magic && OrderType() == OP_BUY)

OrderClose(OrderTicket(), OrderLots(), Bid, Slippage, Green);

}

}

}

return(0);

}

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


int CuentaCompra()

{

int cuenta = 0;

for (int tr = OrdersTotal()-1; tr >= 0; tr --)

{

OrderSelect(tr, SELECT_BY_POS);

if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic)

{

if (OrderType() = OP_BUY)

cuenta++;

}

}

devolver (contar);

}


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


int CuentaVenta()

{

int cuenta = 0;

for (int tr= OrdersTotal()-1; tr >= 0; tr --)

{

OrderSelect(tr, SELECT_BY_POS);

if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic)

{

if (OrderType() = OP_SELL)

cuenta++;

}

}

devolver (contar);

}

 
Por favor, avise - hay dos indicadores personalizados, ambos son indicadores de histograma, ambos se muestran en una ventana separada. Creo que no hay código para este indicador. Creo que puede haber una plantilla (esqueleto) en la que podamos pegar los nombres de los indicadores o sus códigos para obtener un indicador que muestre su división (fracción). ¿Alguien sabe algo?
 
AlexeyVik:
¿Y cómo puedo saber qué valor utilizar?

¿O querías declarar un array? Entonces int N[6] = {1, 2, 5, 9, 15, 19};

Yo no uso esas matrices, si me equivoco en algo, mis amigos me corregirán...



int N[6] = {1, 2, 5, 9, 15, 19};

if(Day()==N[6])¡!

Sin embargo, esta sugerencia no funcionó - array fuera de gama.. .El pase de prueba se detuvo debido a unerror crítico en el EA.

 
abeiks:

int N[6] = {1, 2, 5, 9, 15, 19};

if(Day()==N[6])¡!

Sin embargo, esto no funcionó - array fuera de gama.. .El pase de prueba se detuvo debido a un error crítico en el EA.

Si lees un poco sobre arrays, entenderás que la indexación de los arrays empieza por el cero y llega hasta la dimensión 1, es decir, en tu caso de 0 a 5.