ORDINE_POSIZIONE_ID - pagina 19

 

Problema risolto, relazioni risolte )

Ho una domanda correlata:

È molto scomodo selezionare un ordine per ticket per vedere le sue proprietà, perché non importa dove sia l'ordine nella storia o nel mercato, e il ticket non cambia.

Quindi dobbiamo cercare l'ordine sia qui che là.

Non sarebbe più semplice fare come in MT4: se selezioniamo un ordine, non importa dove si trova.

Se si seleziona un ordine, non importa dove si trova:

OrderSelect

Selezioniamo un ordine per lavorarci ulteriormente.

boolOrderSelect(
intindex,// indice o biglietto dell'ordine
intselect,// flag del metodo di selezione
intpool=MODE_TRADES// fonte di dati per la selezione
);

Il parametro pool è ignorato se l'ordine è selezionato dal numero del biglietto. Il numero del biglietto è l'identificatore unico dell'ordine.

Cosa ne pensa qualcuno?

P.S. Spero che a Michael non dispiaccia continuare un ramo per non moltiplicare il numero di quelli nuovi.

 

Serj_Che:

Chi lo pensa?

Sarebbe... sarebbe bello... un'altra cosa è che lo sviluppatore ha portato un sistema più complesso per trattare le diverse cache (posizioni, ordini normali e storici, trade)... quindi i vantaggi e gli svantaggi...

Integer, tanto di cappello e invidio la tua pazienza :-))

 
Serj_Che:

Problema risolto, relazioni risolte )

Ho una domanda correlata:

È molto scomodo selezionare un ordine per ticket per vedere le sue proprietà, perché non importa dove sia l'ordine nella storia o nel mercato, e il ticket non cambia.

Quindi dobbiamo cercare l'ordine sia qui che là.

Non sarebbe più semplice fare come in MT4: se selezioniamo un ordine, non importa dove si trova.

L'ho letto in MT4 Help:

Cosa ne pensate?

P.S. Spero che a Michael non dispiaccia continuare questo thread, per non averne di nuovi?

No, non sono affatto contrario:)

Sulla questione di OrderSelect:

if ( OrderSelect( ticket) )
{
 //Ордер действующий(в истории его нет)
}
else
{
  //Ордер в истории
}

Non credo che sia molto difficile....

 
Mikalas:

No, per niente:)

A proposito di OrderSelect:

Non credo che sia molto difficile....

Si può certamente aggirare, ma perché il movimento extra, visto che è anche seguito da diversi OrderGet... e HistoryOrderGet...
 

Davvero non capisco perché per venti pagine il topicstarter sta combattendo contro i mulini a vento e cerca ostinatamente di gestire i propri robot attraverso il controllo e l'analisi della posizione netta FORTS, mentre in linea di principio non è possibile, almeno per la presenza di procedure di compensazione, e il trasferimento delle posizioni nette. A differenza del FOREX, il trading FORTS implica una procedura di compensazione. La compensazione è la procedura per ricalcolare le passività dei partecipanti al mercato, calcolando i loro risultati finanziari per l'ultima sessione di trading e portando i loro scambi in un'unica posizione netta, che sarà aperta dopo la fine della sessione di compensazione.

Per capire come succede in realtà, immaginiamo di avere due robot, ognuno dei quali ha fatto un trade completo (in termini di MT4, inclusa l'entrata e l'uscita dal mercato):

Robot 1: vendita scoperta di 1 contratto a 1000 al 28.02.2014 20:30. Esci dalla posizione corta alle 23:30 a 700 e prendi profitto +300 pip (1000 - 700 = 300).

Robot 2: Compra 1 contratto a 700 il 28.02.2014 23:30. Uscire da una posizione lunga il 01.03.2014 alle 23:00 al prezzo di 1050 e prendere profitto +350 punti (1050 - 700 = 350).

In termini di calcoli classici del FOREX sarà semplice. Inizialmente, ci sarà una posizione di vendita nel volume 1 dal 28.02.2014 20:30 al 28.02.2014 23:30. Questa posizione apparterrà al robot 1. Poi lo chiuderà alle 23:30. Nello stesso momento il robot #2 aprirà una posizione di acquisto opposta al volume 1. Esisterà dal 28.02.2014 23:30 al 01.03.2014 23:00, finché il Robot #2 non chiuderà l'ordine di vendita. Visivamente, queste posizioni sono mostrate con le linee arancioni tratteggiate sul grafico qui sotto. Dato che ogni ordine attivato ha l'identificatore della posizione a cui appartiene e l'identificatore dell'Expert Advisor, possiamo confrontare gli ordini piazzati dagli Expert Advisor con le posizioni nette e concludere che le posizioni appartengono agli Expert Advisor corrispondenti. Ma in FORTS le posizioni sono abbinate da operazioni eseguite e trasferite attraverso la compensazione. Sarà più comprensibile mostrarlo su un grafico condizionale:

Invece di calcolare il risultato delle vostre posizioni aggregate al momento della prima compensazione, il vostro broker calcolerà il risultato dei singoli scambi (trade). Si calcola come segue:

Prezzo giornaliero di compensazione 01.03.2014: 950

Prezzo di vendita nel volume 1: 1000; il risultato del trade: 1000 - 950 = 50 pips.

Acquista il prezzo del trade nel volume 1: 700; risultato del trade: 950 - 700 = 250 pips.

Prezzo della transazione Comprare nel volume 1: 700; risultato della transazione 950 - 700 = 250 pips.

Risultato totale del trade: 50 + 250 + 250 = 550 pips.

Il risultato in pip sarà convertito in risultato finanziario in rubli e accreditato sul tuo conto (in caso di compensazione giornaliera, solo il calcolo stimato sarà fatto e sarà aggiunto alla colonna "profitto guadagnato").

È interessante notare che in un calcolo classico, il risultato totale al momento della compensazione sarà simile:

Venduto 1 contratto a 1000 ha chiuso la vendita a 700. Risultato = 100 - 700 = 300 punti.

Comprare 1 contratto a 700 e chiudere l'acquisto alla compensazione di 950. Risultato = 950 - 700 = 250 pips.

Totale delle due posizioni = 300 + 250 = 550 pips.

Al momento della compensazione verrà generata una nuova posizione netta dai tuoi trade, con un nuovo identificatore e nuovi parametri. Questa posizione netta sarà disponibile per il tuo lavoro a partire dall'apertura del mercato dopo la compensazione. Questa posizione netta durerà fino alla prossima compensazione. Poi sarà liquidata e una posizione simile sarà creata al suo posto, ma con un identificatore diverso. Prima che sia liquidata, il margine di variazione maturato su quella posizione sarà accreditato sul vostro conto. Tuttavia, il risultato totale di tutte le posizioni nette iniziate dalla compensazione e di tutti gli scambi completati sarà esattamente uguale al risultato ottenuto nel classico, FOREX calcolo delle posizioni.

Prima o poi il secondo robot farà un'operazione di vendita per chiudere con il volume opposto il suo acquisto. Questa operazione apparterrà a qualche posizione netta, ma sarà una posizione completamente diversa e non quella a cui apparteneva l'ordine di acquisto. Dato che le posizioni sono diverse, con identificatori diversi, attraverso queste posizioni non potremo collegare due ordini EA (apertura e chiusura) e ottenere così le posizioni classiche, come quelle segnate con linee arancioni tratteggiate nella figura precedente.

Il topicstarter cerca ostinatamente di lavorare con le posizioni nette FORTS (linee nere nell'immagine) come si fa nel FOREX (linee arancioni tratteggiate nell'immagine). Tuttavia, visivamente è chiaro che sono posizioni molto diverse, e il loro calcolo è molto diverso.

In realtà, il quadro è ancora più complesso, perché ci sono tassi di conversione, decine di transazioni con prezzi di esecuzione diversi appartenenti allo stesso ordine, l'addebito di commissioni su operazioni scalper e posizioni nette e altre realtà di lavoro su FORTS.

 

C-4, ti sbagli, rileggi il riferimento alla posizione.

 
Peccato che ho chiuso il mio conto con il mio broker. Qualcuno ha una storia di trading che mostri chiaramente come sta andando la compensazione?
 
barabashkakvn:
Peccato che ho chiuso il mio conto con il mio broker. Forse qualcuno ha uno storico del trading per vedere chiaramente come sta andando la compensazione?
Apri un conto demo presso BCS o Otkritie.
 
Mikalas:
Apri un conto demo presso BCS o Otkritie.
Ho già sperimentato un conto demo di un broker. È un'immondizia completa. Non è un ambiente di combattimento. Difetti eterni. Solo reale. E non ci sono questi animali nella mia zona ("BCS o Otkritie") :)
 
barabashkakvn:
Ho già sperimentato il conto demo del broker. È un'immondizia completa. Non è un ambiente di combattimento. È sempre sottoperformante. Solo reale. E non ci sono questi animali nella mia zona ("BCS o Otkritie") :)
Avete Internet, giusto? Su Internet lo fanno :)