Aktienmarkt. Bestände. Geschwindigkeit der Ausführung von Handelsaufträgen. - Seite 3

 

Ich habe die Ausführung und das Ausfüllen von Aufträgen im Lagerbereich von MT-5 überprüft und es stellt sich heraus, dass es nicht möglich ist, die

Marktauftrag und IOC füllen.

Welche Ausführungsart sollte ich wählen, damit der Limitauftrag als Marktauftrag ausgelöst wird?

 
prostotrader #:

Ich habe die Ausführung und das Ausfüllen von Aufträgen im Lagerbereich von MT-5 überprüft und es stellt sich heraus, dass es nicht möglich ist, die

Marktauftrag und IOC füllen.

Welche Art von Füllung sollte ich wählen, damit ein Limitauftrag als Marktauftrag ausgelöst wird?

RETURN sollte funktionieren. Der Preis sollte in der Nähe des Balkens liegen, um sicher zu sein, dass er ausgeführt wird und nicht hängen bleibt. Dies wird sich praktisch als ein Marktauftrag herausstellen.

 
JRandomTrader #:

RETURN sollte trotzdem funktionieren. Und um sicherzustellen, dass es funktioniert und nicht herumhängt, sollte der Preis in der Nähe der Bar sein. In der Praxis wird das mit dem Markt funktionieren.

Ich tue dies in meiner Anwendung für Quick (trans2quik.dll füllt nicht FOK), aber manchmal gibt es ein Problem, wenn sich die Preise der Aktien abrupt bewegen,

bleibt er trotzdem in der Tasse stehen.

Ich verlagere meine Anwendung jetzt auf MT-5 und verbinde die 2 Terminals mit einem benannten Kanal.

MT-5 ist immer noch etwas komplex, da der Expert Advisor für den Aktienmarkt ein Pipe Server ist.

OnTrade und OnTradeTransaction ist nicht möglich.

Einerseits ist es viel wahrscheinlicher, dass ein RETURN Fill ausgeführt wird, aber trotzdem kann es sein, dass der Auftrag nicht sofort ausgeführt wird.

Andererseits, wenn wir eine FOK ausführen,

Wenn wir hingegen einen FOK ausführen, kann es sein, dass uns immer wieder das Volumen für die Ausführung ausgeht.

Ich frage mich, was die beste Vorgehensweise wäre?

 
prostotrader #:

Ich tue dies in der Quick-Anwendung (kein FOK-Fill in trans2quik.dll), aber manchmal gibt es ein Problem, wenn sich die Aktienkurse stark bewegen,

bleibt er trotzdem in der Tasse stehen.

Ich verlagere meine Anwendung jetzt auf MT-5 und verbinde die 2 Terminals mit einem benannten Kanal.

MT-5 ist immer noch etwas komplex, da der Expert Advisor für den Aktienmarkt ein Pipe Server ist.

OnTrade und OnTradeTransaction ist nicht möglich.

Einerseits ist es viel wahrscheinlicher, dass ein RETURN Fill ausgeführt wird, aber trotzdem kann es sein, dass der Auftrag nicht sofort ausgeführt wird.

Andererseits, wenn wir eine FOK ausführen,

Wenn wir hingegen einen FOK ausführen, kann es sein, dass uns immer wieder das Volumen für die Ausführung ausgeht.

Ich frage mich, was die beste Vorgehensweise wäre?

Wir meinen die Situation, wenn der Auftrag nicht genügend Liquidität bis zur Bar hat?

Wir können versuchen, es auch mit dem Timer zu beobachten und es zu entfernen, wenn es ORDER_STATE_PARTIAL ist und der Preis auf der Bar ist.

Oder vielleicht SYMBOL_SESSION_*_ORDERS_VOLUME beobachten

 
prostotrader #:

Ich verschiebe derzeit meine Anwendung auf MT-5 und verbinde 2 Terminals mit einem benannten Kanal.

Hallo!

Können Sie mir bitte sagen (wenn es kein Geheimnis ist), warum Sie den Handel mit einem anderen Broker nicht in Betracht ziehen? Wenn es ein einziges Maklerkonto gibt.

Für Ihren Handel mitAction-Futures, über die Sie in anderen Beiträgen geschrieben haben, erweist sich das als viel praktischer, oder? + würde viele der mit der Verbindung der beiden Terminals verbundenen Probleme lösen.

Meine einzigen Optionen sind Ausführungsverzögerung und Provision...

 
Andrey Miguzov #:

Hallo!

Können Sie mir bitte sagen (wenn es kein Geheimnis ist), warum Sie den Handel mit einem anderen Broker nicht in Betracht ziehen? Wenn es ein einziges Maklerkonto gibt.

Für Ihren Handel mitAktien-Futures, über den Sie in anderen Beiträgen geschrieben haben, erweist sich das als viel praktischer, oder? + würde viele der mit der Verbindung der beiden Terminals verbundenen Probleme lösen.

Ich habe nur die Ausführungsverzögerungszeit und die Provision in den Optionen...

Ich habe geschrieben, dass Quick sehr langsam arbeitet und MT-5 nur in Otkritie und BCS, ich betrachte Finam überhaupt nicht.

Auf dem Fonds nicht brauchen eine Reserve von Mitteln, und für Futures, wenn Scalping, nicht so viel zusätzliches Geld zu halten.

Das Ziel ist es, Scalping auf klassische Arbitrage mit Null Risiko zu machen.

 
JRandomTrader #:

Handelt es sich um eine Situation, in der der Bestellung die Liquidität bis zur Bar fehlt?

Sie können versuchen, es zu beobachten, auch durch Timer, und wenn es ORDER_STATE_PARTIAL und der Preis ist auf der Bar, dann schießen sie.

Oder beobachten Sie vielleicht SYMBOL_SESSION_*_ORDERS_VOLUME.

Sie können keine anderen Funktionen auf dem Pipe-Server verwenden, da die einzige Implementierung auf

MT-5 (Single-Thread) soll den Server EA in den Kommando-Standby-Modus versetzen, einen Lyser-Befehl empfangen und diesen ausführen,

und senden Sie das Ergebnis.

//+------------------------------------------------------------------+
//| Expert Listen Pipe channel function                              |
//+------------------------------------------------------------------+
void ListenPipe()
{
  bool result; 
  bool can_close = false;
  while((IsStopped() == false) && (lsn_exit == false))
  {
    result = Pipe.ReadData();
    if(result == true)
    {
      switch(Pipe.in_data.pipe_com)
      {
        case P_LSNR_EXIT:
          Pipe.out_data.pipe_com = P_DONE;
          can_close = true;
          result = false;
        break;
        case P_SET_MAGIC:
          Pipe.out_data.pipe_com = P_DONE;
          result = false;
        break;
        case P_SELL_SPOT:
          spot_ticket = SpotSetOrder(Pipe.in_data.spot_trade_lot, Pipe.in_data.spot_trade_price, spot_magic, SELL);
          if(spot_ticket > 0)
          {
            Pipe.out_data.pipe_com = CheckDeal(spot_ticket);
          }  
          else Pipe.out_data.pipe_com = P_REJECT;
          result = false;
        break;
        case P_BUY_SPOT:
          spot_ticket = SpotSetOrder(Pipe.in_data.spot_trade_lot, Pipe.in_data.spot_trade_price, spot_magic, BUY);
          if(spot_ticket > 0)
          {
            Pipe.out_data.pipe_com = CheckDeal(spot_ticket);   
          }  
          else Pipe.out_data.pipe_com = P_REJECT;
          result = false;
        break;
        case P_CHECK_DEAL:
          if(spot_ticket > 0)
          {
            Pipe.out_data.pipe_com = CheckDeal(spot_ticket);
          }
          else Pipe.out_data.pipe_com = P_ORDER_N_FOUND; 
          result = false;
        break;
        case P_GET_DATA:
          GetData();
          Pipe.out_data.pipe_com = P_DONE;
          result = false;
        break;
        case P_ORDER_REMOVE:
          if(SpotRomoveOrder(spot_ticket) == true)
          {
            Pipe.out_data.pipe_com = P_ORDER_REMOVE_DONE;
          }
          result = false;
        break;
      }
      if(result == false)
      {
        result = Pipe.WriteData(Pipe.out_data);
        if(result == true)
        {
          if(can_close == true) lsn_exit = true;
        }
      }
    }
    else Print("Error resived data!"); 
  }
  Print("Listener exit.");
}

Ergebnis = Pipe.ReadData(); Hängt den Server-Advisor und wartet auf den Befehl vom Client.

Die gesamte Serververwaltung erfolgt über den Expert Advisor-Client

In diesem Modus ist die Kommunikation zwischen den Terminals unglaublich schnell und die

Struktur mit einem Satz fertiger Daten in beide Richtungen gleichzeitig übertragen wird.

 
prostotrader #:

In diesem Modus ist die Kommunikation zwischen den Terminals unglaublich schnell, und die

Struktur mit einem Satz fertiger Daten in beide Richtungen gleichzeitig übertragen wird.

Die Pipe ist ein Überbau über dem gemeinsamen Speicher, so dass (innerhalb desselben PCs) der Austausch als verzögerungsfrei angesehen werden kann.

 
Dmitriy Skub #:

Die Pipe ist ein Zusatz zum gemeinsamen Speicher und daher kann (innerhalb desselben PCs) davon ausgegangen werden, dass der Austausch ohne Verzögerung erfolgt.

Was ich meinte, war, dass es nicht notwendig ist, über Ihre Anwendung zu kommunizieren.

 
prostotrader #:

Ich habe geschrieben, dass Quick sehr langsam ist und MT-5 nur bei Otkritie und BCS ist, Finam berücksichtige ich überhaupt nicht.

Das habe ich auch über Finam geschrieben. Ich werde dort ein Konto eröffnen, nur wegen der EBS.

Es ist schade, dass die Makler nicht im Forum diskutiert werden können. Ich wäre Ihnen sehr dankbar, wenn Sie in Ihrer persönlichen Nachricht schreiben könnten, warum Sie nicht dorthin gehen sollten.

Auf jeden Fall vielen Dank für die Informationen!

Grund der Beschwerde: