[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate. Non posso andare da nessuna parte senza di te. - pagina 193
![MQL5 - Linguaggio delle strategie di trading integrato nel client terminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Suggerimento.
#proprietà indicator_separate_window
//+------------------------------------------------------------------+
//| funzione di inizializzazione dell'indicatore personalizzata
//+------------------------------------------------------------------+
int init()
{
//---- indicatori
ObjectCreate("profit",OBJ_LABEL,0,0,0,0);
//----
ritorno(0);
}
//+------------------------------------------------------------------+
//| funzione di deinizializzazione dell'indicatore personalizzata
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
ritorno(0);
}
//+------------------------------------------------------------------+
//| funzione di iterazione dell'indicatore personalizzata
//+------------------------------------------------------------------+
int start()
{
//----
Print("Profit ", AccountProfit());
string profit ="Profit ="+DoubleToStr(AccountProfit(),2);
ObjectSetText("profit",profit,9, "Tahoma",White);
ObjectSet("profit",OBJPROP_XDISTANCE,3);
ObjectSet("profit",OBJPROP_YDISTANCE,100);
}
come farlo uscire in una finestra separata dell'indicatore, non sul grafico stesso? ditemi ))
Quindi dichiarare i buffer degli indicatori non significa che i valori delle celle siano zero. Giusto?
Pertanto, MathMax non viene calcolato, poiché uno dei valori da confrontare (vale a dire, GBPUSD_High) non ha alcun valore (affatto, nemmeno zero).
Capisco. Grazie OneDepo.
Mi scuso per aver confuso tutti con la mia semplificazione (gioco di parole). Come ho già detto, non mi interessa il valore di High quotes, mi interessa il valore massimo sulla barra della mia funzione, la cui curva viene disegnata e ridisegnata con successo dall'indicatore durante la formazione della barra. Questo è l'intervallo di ridisegno dell'indicatore durante la barra a cui ero interessato.
Ci penserò.
P.S. Ma perché MathMin è considerato senza domande, le condizioni sono uguali e sono dichiarate uguali?
P.S. Sono molto schietto. Non posso farlo. Aiuto, per favore.
Bene, risolviamo la questione.
1. Quando ho detto che i valori del buffer indicatore sono valori non assegnati, cioè valori arbitrari o "spazzatura" informativa, ti ho intenzionalmente spaventato, perché è una "cattiva idea" usare le variabili in questo modo, come dicono i classici. Credetemi, vi renderete la vita molto più facile inizializzando sempre tutte le variabili che usate, indipendentemente dal linguaggio di programmazione. Una delle caratteristiche di MQL4 è che inizializza le variabili locali per zero di default, e i buffer indicatori per EMPTY_VALUE. Dalla guida:
Notate che questo valore può essere cambiato con SetIndexEmptyValue(), ma nel vostro caso non è essenziale, quindi lasciamolo così.
2. Se il valore del buffer dell'indicatore è uguale a EMPTY_VALUE, l'indicatore non viene disegnato in questo punto.
3 Vediamo cosa abbiamo ora.
EMPTY_VALUE, cioè circa 2 alla nona potenza rispetto a 1,6. Cosa restituirà MathMax()? Giusto, è EMPTY_VALUE che viene scritto nell'i-esimo elemento del buffer dell'indicatore e secondo il passo 2 non sarà disegnato.
Con il codice.
Allo stesso modo, la differenza è che MathMin() restituirà 1,6. Il buffer basso sarà disegnato.
Conclusione. Rileggete il bullone evidenziato.
Buona fortuna
come visualizzarlo in una finestra separata dell'indicatore e non sul grafico stesso? ditemi ))
qualcosa del genere)
Bene, risolviamo la questione...
Buona fortuna
Ho capito tutto.
Ho introdotto delle variabili aggiuntive Max[0] e Min[0] che vengono confrontate e che memorizzano i risultati intermedi durante la formazione delle barre. A loro volta, ho assegnato i loro valori alle mie variabili indicatore GBPUSD_High[i] e ...Low[i] . Così non ho dovuto confrontare con variabili non inizializzate :-)
E tutto ha funzionato!
Grazie mille OneDepo per il chiarimento, mi è sfuggito da qualche parte quando ho letto il tutorial.
Potete dirmi come aggiungere uno stop loss a Ilan1.4?
esempio:
extern int StopLoss = 50
Cosa si dovrebbe aggiungere?
ticket=OrderSend(Symbol(),OP_BUYLIMIT,pLots,pLevel,sp,StopLong(pr,sl),TakeLong(pLevel,tp),pComment,pMagic,pExpiration,pColor);
ticket=OrderSend(Symbol(),OP_BUYSTOP,pLots,pLevel,sp,StopLong(pr,sl),TakeLong(pLevel,tp),pComment,pMagic,pExpiration,pColor);
La prossima domanda, per favore :)
Per favore, consigliate come fare un file EA "impostato".
Ho provato io stesso nel tester nelle proprietà dell'EA, poi "salva", ma niente da fare.
AIUTO!
Per favore, consigliate come fare un file EA "impostato".
Ho provato io stesso nel tester nelle proprietà EA e poi "salva", ma niente da fare.
AIUTO!
Quindi stai facendo la cosa giusta.
Quindi lo stai facendo bene.
Io salvo nella cartella "symbolsets", è giusto o c'è un altro modo più semplice.
>> Grazie.
Buon pomeriggio.
Qui sotto c'è il file con l'indicatore Pattern, continua a darmi questo errore su diversi TF
2009.08.20 11:58:49 Impossibile aprire il file'C:\Programma\XTB-Trader 4/experts/indicators\MTFPI-sub1.ex4' su EURUSD,Daily, qualcuno potrebbe controllare cosa deve correggere, grazie in anticipo.Buon pomeriggio.
Qui sotto c'è il file con l'indicatore Pattern, continua a mostrare questo errore su diversi TF
2009.08.20 11:58:49 Impossibile aprire il file 'C:\Programme\XTB-Trader 4\experts\indicators\MTFPI-sub1.ex4' su EURUSD,Daily, qualcuno può controllare cosa deve correggere? Grazie in anticipo.Manca l'indicatore MTFPI-sub1 .