Petiyashaket: Ich benötige einen Kaufstopp, der durch Preisfraktale nachgezogen (modifiziert) wird, bis er auslöst, und einen Verkaufsstopp auf die gleiche Weise.
Die Frage in Ihrem Code, die rot hervorgehoben ist, lautet also
if(Up>0&&Down==0&&Volume[0]<2) //если верхний фрактал есть а нижнего нету и прошло не больше 2х тиков то:
{
if((High[3]+5*Point-Ask)/Point>MarketInfo(Symbol(),MODE_STOPLEVEL)) //если расстояние 0 бара от хая фрактала позволяет то:OrderSend(Symbol(),OP_BUYSTOP,Lot,High[3]+5*Point,20,High[3]-sl,High[3]+tp,NULL,Magic,0,Green);//выставляем отложенный на покупкуelse {BS=High[3]+5*Point; Print("Виртуальный BS:",BS);} // а ели нет то запоминаем(позже будет добавлен вход с рынка){ // К чему относится эта скобка???
for (int pos=0;pos==OrdersTotal();pos++)
OrderSelect(pos,SELECT_BY_POS,MODE_TRADES);
if(OrderMagicNumber()==Magic&&OrderSymbol()==Symbol()&&OrderType()==OP_BUYSTOP)
{
OrderModify(OrderTicket(),Up+5*Point,High[3]-sl,High[3]+tp,0,CLR_NONE);
}
} // это пара к той...}
Sie haben immer noch nicht geantwortet. Ich weiß nicht, was ich damit anfangen soll, aber das Ergebnis der Codeausführung wird anders sein.
Manchmal gibt es mehrere von ihnen auf einmal. Und bei dieser Leiste wird die Bedingung nicht mehr funktionieren
Victor, diese Frage ist nicht für mich bestimmt. Ich verwende diese Funktion.
bool NewBar()
{
staticdatetime lastbar = iTime(_Symbol, PERIOD_H1, 0); // Период можно менять по желанию
datetime curbar = iTime(_Symbol, PERIOD_H1, 0); // и будет отсчитывать новый бар заданного периода на любом ТФ
if(lastbar != curbar)
{
lastbar = curbar;
return (true);
}
elsereturn(false);
}//******************************************************************|
Ich habe einen Teil des Codes kopiert, um eine Frage zu Klammern zu stellen.
Petiyashaket: Dies ist, was Oleg Remizov lehrt auf YouTube, diese Bedingung schränkt den Handel auf die Nachrichten und den Fang von Elchen :)
Ich habe nichts über Remizov zu sagen. Aber seien Sie nicht beleidigt, wenn Ihr Code keine Balken enthält. Gut, wenn Sie einen Minutencode haben (in welchem Zeitrahmen, natürlich), aber wenn Sie auf eine Stunde oder mehr laufen werden - es wird nur schade für Sie sein.
Petiyashaket: Ich habe mit den Klammern auf verschiedene Weise experimentiert, ich habe sie entfernt und hinzugefügt, das Ergebnis ist das gleiche
Sie brauchen nicht zu experimentieren, Sie müssen nur die Bedeutung dieser Klammern verstehen und wissen, wie man sie anwendet. Es steht in der Dokumentation, ich werde keinen Vortrag darüber lesen.
if(Up>0&&Down==0&&Volume[0]<2) //если верхний фрактал есть а нижнего нету и прошло не больше 2х тиков то:
{
if((High[3]+5*Point-Ask)/Point>MarketInfo(Symbol(),MODE_STOPLEVEL)) //если расстояние 0 бара от хая фрактала позволяет то:OrderSend(Symbol(),OP_BUYSTOP,Lot,High[3]+5*Point,20,High[3]-sl,High[3]+tp,NULL,Magic,0,Green);//выставляем отложенный на покупкуelse {BS=High[3]+5*Point; Print("Виртуальный BS:",BS);} // а ели нет то запоминаем(позже будет добавлен вход с рынка)for (int pos=0;pos==OrdersTotal();pos++)
{ // наверное сюда её надо
OrderSelect(pos,SELECT_BY_POS,MODE_TRADES);
if(OrderMagicNumber()==Magic&&OrderSymbol()==Symbol()&&OrderType()==OP_BUYSTOP)
{
OrderModify(OrderTicket(),Up+5*Point,High[3]-sl,High[3]+tp,0,CLR_NONE);
}
} // это пара к той...}
Dies ist jedoch nur ein Teil des Codes. Ein ähnliches Problem stellt sich im weiteren Verlauf.
Und dieser Code
es ist besser, in init() zu schreiben, und zwar nicht so
und dann in start()
Ich ziehe die Frage zurück, ich habe es selbst herausgefunden.
Ich benötige einen Kaufstopp, der durch Preisfraktale nachgezogen (modifiziert) wird, bis er auslöst, und einen Verkaufsstopp auf die gleiche Weise.
Die Frage in Ihrem Code, die rot hervorgehoben ist, lautet also
Sie haben immer noch nicht geantwortet. Ich weiß nicht, was ich damit anfangen soll, aber das Ergebnis der Codeausführung wird anders sein.
Die Frage in Ihrem Code ist also rot hervorgehoben.
Sie haben immer noch nicht geantwortet. Das Ergebnis der Code-Ausführung wird daher anders ausfallen.
Warum verwenden SieVolume[0]<2 in der Bedingung?
Manchmal gibt es eine ganze Reihe von ihnen auf einmal. Und bei dieser Leiste wird die Bedingung nicht mehr funktionieren.
Warum verwenden SieVolume[0]<2 in der Bedingung?
Manchmal gibt es mehrere von ihnen auf einmal. Und bei dieser Leiste wird die Bedingung nicht mehr funktionieren
Victor, diese Frage ist nicht für mich bestimmt. Ich verwende diese Funktion.
Ich habe einen Teil des Codes kopiert, um eine Frage zu Klammern zu stellen.
Warum verwenden SieVolume[0]<2 in der Bedingung?
Manchmal gibt es mehrere davon auf einmal. Und bei dieser Leiste wird die Bedingung nicht mehr funktionieren
Dies ist, was Oleg Remizov lehrt auf YouTube, diese Bedingung schränkt den Handel auf die Nachrichten und den Fang von Elchen :)
Die Frage in Ihrem Code ist also rot hervorgehoben.
ist nie beantwortet worden. Dadurch wird auch das Ergebnis der Codeausführung anders ausfallen.
Ich habe mit den Klammern auf verschiedene Weise experimentiert, ich habe sie entfernt und hinzugefügt, das Ergebnis ist das gleiche
Sie brauchen nicht zu experimentieren, Sie müssen nur die Bedeutung dieser Klammern verstehen und wissen, wie man sie anwendet. Es steht in der Dokumentation, ich werde keinen Vortrag darüber lesen.
Dies ist jedoch nur ein Teil des Codes. Ein ähnliches Problem stellt sich im weiteren Verlauf.