Ma quando si lavora su FORTS non si dovrebbe fare affidamento sui dati di posizione.
I miei robot tengono traccia dei loro scambi e ricordano il prezzo iniziale di apertura della posizione (non dopo l'ultima compensazione), e lo usano per calcolare profitti, SL, ...
A proposito, un'altra ragione per non fare affidamento sui dati di posizione: FORTS è netting, e diversi robot possono fare trading sullo stesso simbolo più il trading manuale. E cosa è praticamente utile da questa posizione combinata?
Così ogni robot ricorda e "guida" la sua posizione.
A proposito, un'altra ragione per non fare affidamento sui dati di posizione: FORTS è netting, e diversi robot più il trading manuale possono operare sullo stesso simbolo. E cosa è praticamente utile da questa posizione combinata?
Così ogni robot ricorda e "guida" la sua posizione.
spc. Ci sono naturalmente tutti questi scambi e posizioni di mercato - SONARELY? (NELLA STESSA DIREZIONE)?
Roman Shiredchenko #: spc. Ci sono naturalmente tutti questi scambi di mercato e le posizioni sono SONARELY? (IN UNA DIREZIONE)?
I robot possono avere diverse strategie, di tendenza e controtendenza, e possono lavorare su diversi timeframe, quindi le pose possono essere in entrambe le direzioni. E in MT si può vedere solo il "totale".
I robot possono avere diverse strategie, di tendenza e controtendenza, e possono lavorare su diversi timeframe, quindi le pose possono essere in entrambe le direzioni. E in MT si può vedere solo il "totale".
cioè puoi essenzialmente solo tenere un registro di trading dedicato per ogni direzione e questo è tutto... :-)
Questo è difficile, naturalmente... tutto virtuale - tutti i pro e i contro. C'è solo una posizione in comune... Reti.
È certamente una presa in giro - se si fa tutto con uno strumento...
E non ci sono molte opzioni qui. O un robot "perfetto" sul simbolo, o la diversificazione - diversi reali.
Se possiamo fare una considerazione generale: a parte il trasferimento dei prezzi di apertura della posizione cumulativa dopo la compensazione, quali sono le insidie "nascoste" a cui vale la pena prestare attenzione quando si fa trading?
Ci sono essenzialmente commissioni, scambi - penso che tu possa vederli. E la storia degli accordi e delle posizioni si può contare... (è così che secondo l'algoritmo di trading la posizione reale o le sue parti - erano SOLO nel più!)
A cos'altro pensi che dovremmo prestare attenzione quando facciamo trading?
Posso fare un'osservazione generale: a parte il trasferimento dei prezzi di apertura per le posizioni aggregate dopo la compensazione, a quali altre insidie "nascoste" bisogna fare attenzione quando si fa trading?
Ci sono essenzialmente commissioni, scambi - penso che tu possa vederli. E la storia degli accordi e delle posizioni si può contare... (è così che secondo l'algoritmo di trading la posizione reale o le sue parti - erano SOLO nel più!)
A cos'altro pensi che dovremmo prestare attenzione quando facciamo trading?
Quella commissione, che è visibile nella transazione - è solo la commissione dello scambio. La commissione del broker non è visibile nella transazione. Almeno, è così per il broker che lo apre.
Guardo le offerte di OnTrade (o OnTradeTransaction), le calcolo immediatamente e le scrivo in State e in log.
Voglio aggiungere per sicurezza: dovete tenere a mente che un ordine può causare diverse transazioni con volume parziale.
La commissione visibile nella transazione è solo quella dello scambio. La commissione del broker non è visibile nella transazione. Almeno, è così con l'apertura.
Guardo le offerte per OnTrade (o OnTradeTransaction), le calcolo immediatamente e le scrivo nello stato e nel log.
Voglio aggiungere per sicurezza: dovete tenere a mente che un ordine può causare diverse transazioni con volume parziale.
C'è anche un problema organizzativo, se qualcuno sa come risolverlo nel modo migliore - per favore scrivetelo a parole, lo metterò in codice:
in generale, come capire che il ciclo dell'ordine, una nuova posizione - PROFIT ha iniziato - per prendere in considerazione il prezzo medio di apertura della posizione (compensazione cambia il suo valore):
per essere chiari, posso sia dal terminale tramite i tasti me stesso e da un robot con magik....
In generale, ho bisogno di un punto di rapporto - per calcolare il prezzo medio di entrata della posizione.
Posso usare i dati da qui + per esempio leggere il tempo in cui la posizione precedente ha chiuso in profitto e prendere una differenza con il tempo reale del server da lì, come se iniziassi un ciclo dal terminale - senza un robot:
Intendo qualcosa del genere:
// --- определение границ требуемой торговой историиdatetime end=TimeCurrent(); // текущее серверное времяdatetime start=end-PeriodSeconds(PERIOD_D1);// установим начало на сутки назад
come la posizione passata è sul lato positivo - allora la contabilità del ciclo attuale è già iniziata. e gli ordini - devi già contare sia il prezzo di entrata che il volume per calcolare il prezzo medio di entrata della posizione aggregata...
Получение информации по ордерам из истории
Работа с историческими ордерами почти ничем не отличается от работы с действующими ордерами за одним только исключением. Если количество действующих ордеров в кэше mql5-программе не может быть больше одного, то результат HistoryOrdersTotal() и количество исторических ордеров в кэше зависит от того, какой объем торговой истории был загружен функцией HistorySelect(start, end), HistorySelectByPosition() или HistoryOrderSelect().
Важно: если торговая история не была загружена в кэш mql5-программы одной из функций HistorySelect(), HistorySelectByPosition() или HistoryOrderSelect(), то работать с историческими ордерами и сделками невозможно. Обязательно запрашивайте требуемую историю сделок и ордеров перед получением данных по торговой истории.
Для примера приведен скрипт, который ищет последний ордер за последний день и выводит по нему информацию.
// --- определение границ требуемой торговой историиdatetime end=TimeCurrent(); // текущее серверное времяdatetime start=end-PeriodSeconds(PERIOD_D1);// установим начало на сутки назад//--- запросим в кэш программы торговую историю за деньHistorySelect(start,end);
//--- получим количество ордеров в историиint history_orders=HistoryOrdersTotal();
//--- получим тикет ордера из истории, имеющего последний индекс в спискеulong order_ticket=HistoryOrderGetTicket(history_orders-1);
if(order_ticket>0) // получили в кэш исторический ордер, работаем с ним
{
//--- статус ордераENUM_ORDER_STATE state=(ENUM_ORDER_STATE)HistoryOrderGetInteger(order_ticket,ORDER_STATE);
long order_magic =HistoryOrderGetInteger(order_ticket,ORDER_MAGIC);
long pos_ID =HistoryOrderGetInteger(order_ticket,ORDER_POSITION_ID);
PrintFormat("Ордер #%d: ORDER_MAGIC=#%d, ORDER_STATE=%d, ORDER_POSITION_ID=%d",
order_ticket,order_magic,EnumToString(state),pos_ID);
}
else// неудачная попытка получения ордера
{
PrintFormat("Всего в истории %d ордеров, не удалось выбрать ордер"+
" с индексом %d. Ошибка %d",history_orders,history_orders-1,GetLastError());
}
Naturalmente, idealmente dovrebbe essere chiuso indipendentemente dal risultato del ciclo precedente - profitto o perdita.
L'inizio - il nuovo è stato segnato per il calcolo nel codice - il prezzo medio del nuovo ciclo attuale delle medie, per esempio, o le azioni - non importa...
Надежный торговый робот не может быть создан без понимания механизмов работы торговой системы MetaTrader 5. Клиентский терминал получает от торгового сервера информацию о позициях, ордерах и сделках. Чтобы правильно обработать эти данные средствами MQL5 необходимо хорошо представлять как происходит взаимодействие mql5-программы и среды исполнения терминала.
Ma quando si lavora su FORTS non si dovrebbe fare affidamento sui dati di posizione.
I miei robot tengono traccia dei loro scambi e ricordano il prezzo iniziale di apertura della posizione (non dopo l'ultima compensazione), e lo usano per calcolare profitti, SL, ...
A proposito, un'altra ragione per non fare affidamento sui dati di posizione: FORTS è netting, e diversi robot possono fare trading sullo stesso simbolo più il trading manuale. E cosa è praticamente utile da questa posizione combinata?
Così ogni robot ricorda e "guida" la sua posizione.
Prendi quest'ultimo prezzo medio e il volume della posizione, il prezzo del nuovo trade e il suo volume. Tutto sarà calcolato correttamente.
A proposito, un'altra ragione per non fare affidamento sui dati di posizione: FORTS è netting, e diversi robot più il trading manuale possono operare sullo stesso simbolo. E cosa è praticamente utile da questa posizione combinata?
Così ogni robot ricorda e "guida" la sua posizione.
spc. Ci sono naturalmente tutti questi scambi di mercato e le posizioni sono SONARELY? (IN UNA DIREZIONE)?
I robot possono avere diverse strategie, di tendenza e controtendenza, e possono lavorare su diversi timeframe, quindi le pose possono essere in entrambe le direzioni. E in MT si può vedere solo il "totale".
I robot possono avere diverse strategie, di tendenza e controtendenza, e possono lavorare su diversi timeframe, quindi le pose possono essere in entrambe le direzioni. E in MT si può vedere solo il "totale".
cioè puoi essenzialmente solo tenere un registro di trading dedicato per ogni direzione e questo è tutto... :-)
Questo è difficile, naturalmente... tutto virtuale - tutti i pro e i contro. C'è solo una posizione in comune... Reti.
È certamente una presa in giro - se si fa tutto con uno strumento...
cioè si può essenzialmente solo tenere un registro commerciale dedicato per ogni linea di business e questo è tutto... :-)
È difficile, naturalmente... tutto è virtuale - tutti i pro e i contro. C'è solo una posizione in comune... Reti.
Certo, è una presa in giro - se si fa tutto su uno strumento...
Ma non ci sono molte opzioni qui. O un robot "ideale" sul simbolo, o la diversificazione - diversi robot reali.
E non ci sono molte opzioni qui. O un robot "perfetto" sul simbolo, o la diversificazione - diversi reali.
Se possiamo fare una considerazione generale: a parte il trasferimento dei prezzi di apertura della posizione cumulativa dopo la compensazione, quali sono le insidie "nascoste" a cui vale la pena prestare attenzione quando si fa trading?
Ci sono essenzialmente commissioni, scambi - penso che tu possa vederli. E la storia degli accordi e delle posizioni si può contare... (è così che secondo l'algoritmo di trading la posizione reale o le sue parti - erano SOLO nel più!)
A cos'altro pensi che dovremmo prestare attenzione quando facciamo trading?
Posso fare un'osservazione generale: a parte il trasferimento dei prezzi di apertura per le posizioni aggregate dopo la compensazione, a quali altre insidie "nascoste" bisogna fare attenzione quando si fa trading?
Ci sono essenzialmente commissioni, scambi - penso che tu possa vederli. E la storia degli accordi e delle posizioni si può contare... (è così che secondo l'algoritmo di trading la posizione reale o le sue parti - erano SOLO nel più!)
A cos'altro pensi che dovremmo prestare attenzione quando facciamo trading?
Quella commissione, che è visibile nella transazione - è solo la commissione dello scambio. La commissione del broker non è visibile nella transazione. Almeno, è così per il broker che lo apre.
Guardo le offerte di OnTrade (o OnTradeTransaction), le calcolo immediatamente e le scrivo in State e in log.
Voglio aggiungere per sicurezza: dovete tenere a mente che un ordine può causare diverse transazioni con volume parziale.
La commissione visibile nella transazione è solo quella dello scambio. La commissione del broker non è visibile nella transazione. Almeno, è così con l'apertura.
Guardo le offerte per OnTrade (o OnTradeTransaction), le calcolo immediatamente e le scrivo nello stato e nel log.
Voglio aggiungere per sicurezza: dovete tenere a mente che un ordine può causare diverse transazioni con volume parziale.
C'è anche un problema organizzativo, se qualcuno sa come risolverlo nel modo migliore - per favore scrivetelo a parole, lo metterò in codice:
in generale, come capire che il ciclo dell'ordine, una nuova posizione - PROFIT ha iniziato - per prendere in considerazione il prezzo medio di apertura della posizione (compensazione cambia il suo valore):
per essere chiari, posso sia dal terminale tramite i tasti me stesso e da un robot con magik....
In generale, ho bisogno di un punto di rapporto - per calcolare il prezzo medio di entrata della posizione.
Posso usare i dati da qui + per esempio leggere il tempo in cui la posizione precedente ha chiuso in profitto e prendere una differenza con il tempo reale del server da lì, come se iniziassi un ciclo dal terminale - senza un robot:
Intendo qualcosa del genere:
come la posizione passata è sul lato positivo - allora la contabilità del ciclo attuale è già iniziata. e gli ordini - devi già contare sia il prezzo di entrata che il volume per calcolare il prezzo medio di entrata della posizione aggregata...https://www.mql5.com/ru/articles/211
--------------------------------------------------------------
Naturalmente, idealmente dovrebbe essere chiuso indipendentemente dal risultato del ciclo precedente - profitto o perdita.
L'inizio - il nuovo è stato segnato per il calcolo nel codice - il prezzo medio del nuovo ciclo attuale delle medie, per esempio, o le azioni - non importa...