Limiti/puntate al prezzo corrente nel Terminale (non nel Tester)

 

Il sabba è stato discusso sul forum più di una volta. Mi ha detto cosa succede a questi ordini nel Terminale e nel Tester. Ma ho deciso di creare un thread separato sull'argomento. E solo sul Terminale per affrontare una questione dolorosa: i conti reali.


Per brevità ci riferiremo agli ordini limite e alle posizioni aperte al prezzo corrente come LT.


In Terminal, in tutti i casi tranne Exchange+Netting, i LT non vengono controllati per la soddisfazione delle loro condizioni di prezzo fino al prossimo tick dopo essere stati piazzati.


Per esempio, si piazza un limite di modifica al prezzo corrente. Sarà modificato ma non accettato. Puoi aspettare per minuti (su un mercato poco liquido, per esempio) il prossimo tick. E se il prezzo peggiora, il limite rimarrà ineseguito. E questo nonostante il fatto che il prezzo era soddisfacente per alcuni minuti prima.


Lo stesso vale per i Take Points. Per esempio, è necessario chiudere la posizione corrente al prezzo attuale. Certo, si può fare a mercato, ma allora c'è un'alta probabilità di slippage negativo. Di nuovo, su un mercato poco liquido o veloce, per esempio. Quindi metti un take sul prezzo corrente. E non viene eseguito come l'ordine limite di cui sopra.


Dite loro che l'ordine limite in MT5 non è un ordine limite ma un ordine a mercato. E avresti ragione. Sì, in MT5 chiudere posizioni tramite ordini limite può essere molto pericoloso. Solo se il software di terzi non è impostato in modo tale da rendere le posizioni limite impercettibili al suo interno. Ma torniamo di nuovo al compito di chiudere la posizione attuale. Questo può essere fatto attraverso il Limite opposto e poi collassando attraverso CloseBy. Ma neanche questo può essere fatto. Perché, come detto sopra, il limite non viene accettato fino al prossimo tick.


Quindi, in MT5 è impossibile chiudere la posizione corrente senza rischio di slippage negativo. Più precisamente, su exchange+netting è possibile. Ma in tutte le altre situazioni - non si può.


Questa disgrazia riguarda anche MT4. Ma non è interessante.


Cari sviluppatori, cambierete qualcosa in questo settore? MT5 non può fare le cose di base. Le piattaforme competitive non ci pensano nemmeno quando lo fanno con logica leggerezza. E MT5 non può chiudere una posizione!


Bene, ora un altro esempio che accade centinaia di volte al giorno.


C'è un limite FOK, il prezzo lo raggiunge, viene accettato. L'aggregatore lo manda a LP1 che riattacca e MT5 rimuove il limite.

Il robot riemette il limite, ovviamente, al prezzo corrente che dà LP2. E bummer, non succede niente: il limitatore non viene accettato in modo che l'aggregatore possa inviarlo a LP2.


Se viene creato un ordine a mercato, nessun problema. Limitatore - non esiste. Cioè, MT5 mette in chiaro che o rischiate uno slippage negativo o sperate che un tick futuro incontri il vostro limite. Si scopre che il trading attraverso MT5 è meno redditizio che attraverso qualche terminale debole scritto in proprio.


Chiamare le cose con il loro nome proprio è un peccato. Ci stiamo scervellando con i tecnici degli aggregatori su come aggirare questo problema. E anche le idee delle varie stampelle comportano dei rischi. Nessuno capisce perché queste cose elementari non vengono fatte in MT5.

 
Per coloro che hanno bisogno di ri-limitare il limitatore FOK/IOC di MT5 rimosso da soli, chiamare OnTick nelle funzioni OnTrade può aiutare un po'.
 
Cioè, da quanto ho capito, MT5 non ha il tipo di esecuzione istantanea per la negoziazione, che MT4 ha.
 
Alexey Navoykov:
Cioè, da quanto ho capito, MT5 non ha il tipo di esecuzione istantanea per il trading, che è disponibile in MT4.

Un po' fuori tema.

 
fxsaber:

C'è un limite FOK, il prezzo lo raggiunge, viene accettato. L'aggregatore lo invia a LP1, LP1 reindirizza e MT5 rimuove il limite.

Il fornitore di liquidità lo riceve anche come limite, o come limite di mercato?

 
Questo è un problema globale, non solo con MT5. E se l'involucro, sotto forma di MT5, penso che possa essere fissato (puramente tecnicamente), allora se scaviamo più a fondo, ci troveremo alle pinne. E non si possono aggiustare... puramente politicamente.
Quindi, ci sarà ancora questa trappola.
 
Igor Zakharov:

e il fornitore di liquidità lo ottiene anche sotto forma di un cap o di un market cap?

Sotto forma di limite. Altrimenti non starebbe reindirizzando, starebbe eseguendo con uno slittamento negativo.

Ma senza l'accettazione di MT5 non ci può essere alcun invio. Questo è il problema. MT5 non accetta. Il limite può brillare di giallo nel Terminale per minuti. E per tutto questo tempo non ci sarà accettazione.


C'è una soluzione da parte degli sviluppatori di aggregatori per trasformare tutti gli ordini di mercato di MT5 all'interno in ordini limite, perché MT5 accetta i mercati in una sola volta. Questo è una sorta di workaround per il problema di MT5.


Ma ha uno svantaggio significativo. Supponiamo di dover modificare un ordine limite esistente impostandolo al prezzo corrente. Allora abbiamo due opzioni:

  1. Togliere il limitatore e poi mettere in un mercato, che l'aggregatore farà il limitatore. Ma quando si rimuove il limitatore, il prezzo può andare via e si può non fare in tempo.
  2. Posizionare un mercato e poi rimuovere il limitatore. Ma in questo caso, quando viene piazzato un mercato, il limitatore può anche essere eseguito. Quindi, il volume della posizione raddoppierà.
Gli sviluppatori di aggregatori stanno cercando di aggirare questa folle limitazione di MT5, ma hanno delle stampelle con i loro svantaggi. Se MQ accettasse i limitatori/le rotture sul tick corrente, tutto sarebbe a posto.
 
fxsaber:


Questa sfortuna vale anche per MT4. Ma non è interessante.


L'intera industria del forex al dettaglio è afflitta da questa truffa, con un metodo di esecuzione truffaldino.
E questi metodi sono impostati per voi dai DT come vogliono.
Mi stupisce la gente che lo sa perfettamente e continua ad usarlo.
E sì, nel caso, FOK tutto o niente.

 
Heroix:
Questo è un problema globale, non solo con MT5. E se il wrapper come MT5, penso, può essere fissato (puramente tecnicamente), allora se si scava più a fondo, si raggiunge il Lastlukes. E non possono essere aggiustati... puramente politicamente.
Quindi, ci sarà ancora questa trappola.

Devi aver scritto su qualche altro argomento. In questo caso il problema è tecnico - non c'è accettazione.

Se MQ non facesse una tale accettazione nella modalità Exchange+Netting, allora la comunità MOEX, sotto forma di haters, avrebbe un vero motivo per gettare fango su MT5. MQ ha fatto l'accettazione (compreso il Tester) e lì tutto è a posto.

L'argomento danneggia sostanzialmente il Tester, ma lo tralascio specificamente perché ho bisogno di una soluzione per i conti reali prima di tutto.

 
In MT4 con la modalità Instant Execution non c'è questo problema. E Market Execution nel trattare è, a priori, carta bianca per il commerciante di barare
 
Roman:

Questo guaio riguarda l'intera industria del forex al dettaglio, con un metodo di esecuzione assurdo.

Per favore, niente offtop. MT5 è una piattaforma di mercato. La discussione qui riguarda una seria limitazione/fallimento TECNICO.

Ci sono altri problemi, ma non mi concentrerò su di essi qui.