Perché è impossibile impostare le proprietà di visualizzazione (parte del disegno) tramite la maniglia dell'indicatore (parte del calcolo). Un bug è quando qualcosa è scritto in un modo, ma funziona in un altro modo.
Qui è necessario un approccio diverso. Accesso all'indicatore per nome breve, come nel gruppo di funzioni ChartIndicatorXXX. Qualcosa come ChartIndicatorSetInteger(chart_id,sub_window,indicator_name,PROP_COLOR,mod,value)
Ci abbiamo già pensato, ma non l'abbiamo ancora fatto.
Se è destinato agli indicatori impostati programmaticamente, non sarebbe meglio sostituire l'evidenziato con la maniglia dell'indicatore?
Alexey Viktorov: Se questo è pensato per gli indicatori impostati programmaticamente, non è meglio sostituire l'evidenziato con la maniglia dell'indicatore?
Non meglio. Perché è impossibile senza modifiche all'architettura. Ho descritto il perché nei dettagli.
Il completamento del biglietto commerciale risultante non è garantito. Il riempimento o meno dipende dalla modalità di esecuzione dello strumento e dalle impostazioni del particolare server.
Chi si è sdraiato per un Result.deal non nullo - agire.
Perché se non è visibile comunque?
Questi parametri possono essere tralasciati se non c'è bisogno di visualizzare un indicatore.
E la compatibilità con il vecchio codice non sarà compromessa. Durante il test, l'indicatore è sempre visualizzato.
Perché è impossibile impostare le proprietà di visualizzazione (parte del disegno) tramite la maniglia dell'indicatore (parte del calcolo). Un bug è quando qualcosa è scritto in un modo, ma funziona in un altro modo.
Qui è necessario un approccio diverso. Accesso all'indicatore per nome breve, come nel gruppo di funzioni ChartIndicatorXXX. Qualcosa come ChartIndicatorSetInteger(chart_id,sub_window,indicator_name,PROP_COLOR,mod,value)
Ci abbiamo già pensato, ma non l'abbiamo ancora fatto.
Forum sul trading, sistemi di trading automatico e test di strategie di trading
Peculiarità del linguaggio mql5, consigli e trucchi
fxsaber, 2017.02.25 16:02
{
if ((Result.deal == 0) && (Result.order != 0))
{
if (::HistorySelectByPosition(::HistoryOrderGetInteger(Result.order, ORDER_POSITION_ID)))
for (int i = ::HistoryDealsTotal() - 1; i >= 0; i--)
{
const ulong DealTicket = ::HistoryDealGetTicket(i);
if (Result.order == ::HistoryDealGetInteger(DealTicket, DEAL_ORDER))
{
Result.deal = DealTicket;
break;
}
}
}
return(::HistoryDealSelect(Result.deal));
}
// Учтены MT5-нюансы: Result.deal == 0
static bool OrderSendSync( const MqlTradeRequest &Request, MqlTradeResult &Result )
Se questo è pensato per gli indicatori impostati programmaticamente, non è meglio sostituire l'evidenziato con la maniglia dell'indicatore?
cos'è la "correzione di Result.deal"?
Forum sul trading, sistemi di trading automatico e test di strategie di trading
Bug, bug, domande
fxsaber, 2017.02.23 15:34
Dal consiglio di amministrazione.
Il completamento del biglietto commerciale risultante non è garantito. Il riempimento o meno dipende dalla modalità di esecuzione dello strumento e dalle impostazioni del particolare server.
Chi si è sdraiato per un Result.deal non nullo - agire.
Questi parametri possono essere tralasciati se non c'è bisogno di visualizzare l'indicatore.
Beh... Vedo che non si può contare su un Result.deal non nullo. Allora cosa dice questa linea?
// Учтены MT5-нюансы: Result.deal == 0Dove sono contabilizzati?
Beh... Vedo che non si può contare su un Result.deal non nullo. Allora cosa dice questa linea?
Dove sono contabilizzati?
In OrderSendSync viene chiamato l'overloaded (vedi sopra) HistoryDealSelect.
fxsaber:
La sincronizzazione non è più rilevante. Solo il pezzo responsabile della correzione di Result.deal è evidenziato.