Fehler, Irrtümer, Fragen - Seite 619

 
-Alexey-:

Ich schreibe gerade an der Funktion des minimalen Stop Levels für MT4 409 bild. Bei einer Kauforder hält der Tester die Mindestwerte von Bid für richtig, bei einer Kauf-Limit-Order die Mindestwerte von Ask. Logischerweise werden - ähnlich wie beim Kauf - Operationen durchgeführt. Frage: Ist dies die Absicht, oder müssen wir den Verwaltungsrat anschreiben?

Es gab, gibt und wird immer einen Kauf von Ask geben.

Gibt es außer den Worten noch andere Beweise?

 
-Alexey-:

Für MT4 409 bild wird nun die Funktion der Abrechnung des minimalen Stoplevels geschrieben. Bei einem Kaufauftrag hält der Tester die Mindestwerte von Bid für richtig und bei einem Kaufauftrag die Mindestwerte von Ask für richtig. Logischerweise werden die Operationen - ähnlich wie beim Kauf - durchgeführt. Frage - soll das so sein, oder soll ich es in den BSB schreiben?

Im Prinzip macht es Sinn) wird der Stop bei Bid ausgelöst, das Pendant öffnet bei Ask.

sergeev:

War, ist und wird immer ein Kauf von Ask sein.

Bei Käufen wird der Mindestabstand zu sl aus dem Gebot entnommen, soweit ich mich erinnere, war das schon immer so)
 
sergeev:

Es gab, gibt und wird immer einen Kauf von Ask geben.

Gibt es andere Beweise als Worte?


Der Handel erfolgt in beiden Fällen von ASK aus, aber das Stop-Level sollte, soweit ich das verstehe, von BID aus gezählt werden, weil es sich auf eine Close-Sell-Operation bezieht, die im Tester für eine BUY-Order stattfindet. Aber aus irgendeinem Grund wird LIMIT aus ASK für einen BUY-Auftrag berechnet. Beispiel:

bool first_run=true;
int init()
{
   return(0);
}
int deinit()
{
   return(0);
}
int start()
{
   if (first_run==true)
   {
      string _Symbol=Symbol();
      int _Digits=MarketInfo(_Symbol, MODE_DIGITS);
      double Point_size=MarketInfo(_Symbol, MODE_POINT);
      double Min_stop_distanse=MarketInfo(_Symbol, MODE_STOPLEVEL)*Point_size;
      double Min_freeze_distanse=MarketInfo(_Symbol, MODE_FREEZELEVEL)*Point_size;
      double Spread=MarketInfo(_Symbol, MODE_SPREAD)*Point_size;
      Print("Spread="+Spread);
      double _Order_price;
      double _Order_sl;
      double _Order_tp;
      double _Order_lot;
      _Order_lot=MarketInfo(_Symbol, MODE_MINLOT);
      /* highest accepted level for buy limit order */
      double _Upper_bound_for_buy_limit=NormalizeDouble(MarketInfo(_Symbol, MODE_ASK)-Min_stop_distanse, _Digits);
      /* defining orders price */
      _Order_price=_Upper_bound_for_buy_limit; /* ASK */
      _Order_sl=NormalizeDouble(_Order_price-Min_stop_distanse, _Digits); /* ASK-STOPLEVEL */
      _Order_tp=NormalizeDouble(_Order_price+Min_stop_distanse, _Digits); /* ASK+STOPLEVEL */
      /* sending buy limit order */
      OrderSend(_Symbol, OP_BUYLIMIT, _Order_lot, _Order_price, 0, _Order_sl, _Order_tp, NULL, 0, 0, Green);
      first_run=false;
   }
   return(0);
}

Ergebnis:

2012.01.08 14:39:04 2011.06.03 01:43 Test EURUSD,M1: Spread=0.00020000

2012.01.08 14:39:04 2011.06.03 01:43 test EURUSD,M1: open #1 buy limit 0.01 EURUSD at 1.4478 sl: 1.4474 tp: 1.4482 ok

 
der Code wurde nicht korrekt eingefügt.
 
Swan:
Bei Käufen wird der Mindestabstand zum Sl vom Gebot genommen, soweit ich mich erinnere war das schon immer so)

Zuerst klären.

Handelt es sich um Stopps in Kaufaufträgen oder um schwebende Kaufaufträge?

 
sergeev:

der Code wurde nicht korrekt eingefügt.
Was sollen wir jetzt tun? :) Ich habe "Code" markiert und gedrückt, aber da ist es...
 
-Alexey-:
Was sollen wir jetzt tun? :) Ich glaube, ich habe "Code" markiert und gedrückt, aber da ist er...

Sie können den Beitrag löschen und es noch einmal ganz normal versuchen. Wollen Sie darüber sprechen? oder über Ihr Problem mit der Haltestellenebene?

 
sergeev:

Sie können den Beitrag löschen und es noch einmal auf normale Weise versuchen. Möchten Sie darüber sprechen? oder über Ihr Problem mit der Haltestelle?

Ich habe es mit dem Code bekommen. Zu den Grenzwerten. Soll ich es in den BSB schreiben oder ist es so konzipiert, dass das Stop-Level bei einer Kauf-Limit-Order aus dem Orderpreis ASK berechnet wird. Wenn ja, warum wird es in der BUY-Reihenfolge als das Gegenteil betrachtet?
 
-Alexey-:
Bei einem Kauf-Limitauftrag wird der BID-Stopp/das BID-Niveau anhand des ASK-Preises des Auftrags berechnet. Wenn das so ist, warum wird es dann in der BUY-Ordnung andersherum betrachtet?


Beginnen wir mit der Reihenfolge. Zweite Klasse Schule.

А. Bei Aufträgen werden Stop Loss und Take Profit anhand des Eröffnungskurses berechnet. Es ist klar, dass Sie, wenn Sie 100 Punkte wollen, 100 Punkte vom Eröffnungskurs entfernt im Gewinn schließen müssen.

Б. Die Einstellung von SL/TP/STOP wird durch den so genannten Stop-Level beeinflusst. Das heißt, Sie können keinen Stop-Loss/Stack-Profit/Position näher als den StopLoss vom AUSFÜHRUNGSPREIS platzieren.

Daraus ziehen wir die folgenden Schlussfolgerungen.

1. Wenn Sie eine Marktorder eröffnen, sollten Sie SL/TP unter Berücksichtigung des Stop-Levels vom aktuellen Kurs, bei dem der Stop ausgelöst wird, festlegen. Bei den Buchten werden die Stops bei Bid ausgelöst, so dass wir das Stop-Niveau des aktuellen Bid berücksichtigen. Das ist der SL/TP, den Sie in der Regel von der Ordereröffnung an setzen (weil Sie 100 Punkte benötigen), aber achten Sie darauf, die Position des Bid und die Größe des Stop Levels zu berücksichtigen.

2. Wenn Sie eine Limit-Order eröffnen, sollte die Limit-Order selbst erwartungsgemäß nicht näher als das Stopp-Level an dem Preis liegen, zu dem sie ausgelöst wird. Das heißt, für einen Buy Stop/Bail Out messen wir das Stop Level gegen Asc. Das heißt, Sie platzieren eine Stop-Order zu dem von Ihnen gewünschten Kurs, wobei Sie immer den Abstand des Stop-Levels zum Ask berücksichtigen.

Aber Achtung! Wenn Sie den Stop Loss und den Take Profit in der Order festlegen, werden diese vom Eröffnungskurs der Order gemessen, nicht vom Ask, sondern vom Eröffnungskurs der Order! Die aktuellen Kurse haben keinen Einfluss auf diese beiden schwebenden Aufträge (SL/TP). Sie werden nur durch den Abstand zu der künftig ausgelösten Ordnung behindert. Das heißt, Sie setzen den SL/TP in der Order unter Berücksichtigung des Abstands des Stop-Levels vom Eröffnungskurs dieser Order. Das Bid/Ask hat damit nichts zu tun.

Erinnern Sie sich?

 
sergeev:

Aber Achtung! Stoploss und Takeprofit in der Pending Order werden in aller Ruhe vom Eröffnungskurs der Order gemessen ! !! nicht von Asc, sondern vom Eröffnungskurs der Order! Die aktuellen Kurse haben keinen Einfluss auf diese beiden schwebenden Aufträge (SL/TP). Sie werden nur durch den Abstand zu der künftig ausgelösten Ordnung behindert. Das heißt, Sie setzen den SL/TP in der Order unter Berücksichtigung des Abstands des Stop-Levels vom Eröffnungskurs dieser Order. Das Bid/Ask hat damit nichts zu tun.

Haben Sie es?

Ja, ich erinnere mich, aber ich verstehe es nicht. Es ist klar, dass eine schwebende Buy-Limit-Order eröffnet wird, wenn ihr Niveau den Ask-Preis erreicht. Daher befindet sich der aktuelle Geldkurs zu diesem Zeitpunkt in einem inakzeptablen Abstand zum SL (ebenfalls zum Geldkurs ausgeführt), der früher als Basispreis (d. h. der Briefkurs zum Zeitpunkt der Ausführung) - Stop Level gemessen wurde. Das Einzige, womit man versuchen kann, dies zu erklären, ist, dass nicht im Voraus bekannt ist, wie der Ausführungskurs des Angebots zum Zeitpunkt der Ausführung sein wird. Wenn das die Absicht ist - ok, das ist klar, danke für den ausführlichen Beitrag.