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

 
beginner:

puede, la pregunta es ¿por qué no puede rates[0].close?

Sólo puedo adivinar: porque el objeto aún no está formado.
 
tara:

Sólo puedo suponerlo: porque el objeto aún no se ha formado.


No, debe haber un error, debería ser como en el 5, ¿o estoy confundido?

 
beginner:


No, debe haber un error, debería ser como el 5, ¿o estoy confundido?

No olvides que Close[0] no existe, sólo que estamos acostumbrados a que sea diferente.
 
Close[0] - El precio de cierre de la vela en el momento actual, así como todos los demás parámetros alto, bajo...
 
tara:
No olvides que Close[0] no existe, sólo que estamos acostumbrados a que sea diferente.

no hagas esto... no existe...

"No hay ninguna cuchara" (c) ))

Close[0]=Bid, así que...

 
evillive:

no hagas esto... no existe...

"No hay ninguna cuchara" )))

Close[0]=Bid, aquí...



Deberías preguntar a los Metakwots, no a mí:)
 
Yo no utilizaría ninguna referencia a una cita que aún no se ha hecho para desbaratar un recurso.
 

Hola, tengo el siguiente problema. El registro da un OrderModify de 130 cuando se prueba, ayúdame a encontrar una salida. Aquí está el código del consejero:

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

//| 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 = 250;

extern int StopLoss = 100;

extern int Deslizamiento = 10;

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;



doble PriceHigh, PriceLow, SL, TP;

int ticket;


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

//| 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);

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

{

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

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

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

si (billete > 0)

{

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

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

}

}


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

{

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

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

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

si (billete > 0)

{

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

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

}

}

if (Ask <= PriceLow && 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 >= PriceLow && 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);

}

 

Corríjalo aquí

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

 SL = NormalizeDouble(Ask+TakeProfit*Point, Digits);
En el segundo caso debería ser TP
 

Oh, hombre...

¡Gracias, Roger!