Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 6. - pagina 852
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
È meglio usare le nuove caratteristiche CopyHigh di mql4 e la funzione matematica MathMax
O iHighest
Buongiorno, ditemi dov'è l'errore.
/////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////Зона консолидации/////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////
if(Hour()>=10)
{
for(x9=2; x9<=5; x9++)
{
x10=Hour()-x9;//x10 -номер свечи от которой считаем восемь свечей назад
if(x10>=0)
{
int Minn=iLowest(NULL, PERIOD_H1, MODE_LOW , x10+8, x10);
int Maxx=iHighest(NULL, PERIOD_H1, MODE_HIGH, x10+8, x10);
z11 =iHigh(NULL,PERIOD_H1,Maxx);
z12 =iLow(NULL, PERIOD_H1,Minn);
ZPB =iTime(NULL,PERIOD_H1,x10+8);
ZPB1 =iTime(NULL,PERIOD_H1,x10);
if(z11-z12<=z10)
{
y4=ObjectCreate("Зона консолидации",OBJ_RECTANGLE,0,0,0,0,0);
y4=ObjectSet("Зона консолидации",OBJPROP_WIDTH,2);
y4=ObjectSet("Зона консолидации",OBJPROP_COLOR,Blue);
y4=ObjectSet("Зона консолидации",OBJPROP_BACK,true);
y4=ObjectMove("Зона консолидации",0,ZPB,z11);
y4=ObjectMove("Зона консолидации",1,ZPB1,z12);
}
}
}
}
////////////////////////////////////////////////////////////////////////////////////////////////////
È meglio usare le nuove caratteristiche CopyHigh di mql4 e la funzione matematica MathMax
O iHighest
Per favore, consigliate come trattare l'errore numero 1 (ERR_NO_RESULT Nessun errore, ma risultato sconosciuto)?
Quando un ordine sta perdendo più di $1 (100 pips a 0.01 lot) su EURUSD, il mio Expert Advisor cerca di modificare l'ordine (mettere il TakeProfit dell'ordine al suo prezzo aperto).
Ricevo questo errore, cosa devo fare?
Se CopyHigh, allora ArrayMaximum, IMHO...
Ciao, sto lavorando con 2000 medie mobili(MAs).
Il compito è quello di calcolare il numero di ripetizioni del prezzo MA su Close[1].
- Come posso implementare questo compito con risorse minime.
Ciao, sto lavorando con 2000 medie mobili (MAs).
Il compito è quello di calcolare il numero di ripetizioni del prezzo MA su Close[1].
- Come posso implementare questo compito con risorse minime.
Ciao, leggendo il tutorial, sono arrivato alle variabili GV. Non riesco a capire come funzionano. Per esempio, il tutorial dice che le variabili GV possono essere solo di tipo double. Ok, doppio quindi doppio). Ma poi quando elencano le funzioniGlobalVariableSet(),GlobalVariableGet(),GlobalVariableDel() scrivono che una di esse restituisce tempo, un'altra restituisce bool, ecc. Mi sono confuso nella mia testa, non capisco come sono organizzati. Ho anche iniziato a studiare MQL4 di recente, ho un sacco di nuove informazioni nella mia testa. Se possibile, spiegatemi un esempio di uno dei problemi in un libro di testo (o uno dei vostri):
Compito 24. Diversi Expert Advisors lavorano nel terminale simultaneamente. L'importo del deposito è di 10 000 dollari. Il valore totale di tutti gli ordini aperti non deve superare il 30% dell'importo del deposito. Ad ogni Expert Advisor dovrebbe essere assegnata la stessa quantità di denaro. Creare un programma Expert Advisor contenente il calcolo della quantità di denaro allocato per il trading.
intEsperti;//Numero di consiglieri esperti. di esperti
double Depo=10000.0, // deposito specificato
Persistente=30,// percentuale data
Soldi;// Fondi che si stanno cercando.
string Quantity="GV_Quantity"; // Nome della variabile GV
//--------------------------------------------------------------------
int init()//Speciale. funzione init
{
Experts=GlobalVariableGet(Quantity); // Ottieni il valore del testo.
Experts=Experts+1; // Numero di esperti.
GlobalVariableSet(Quantity, Experts); // Nuovo valore
Money=Depo*Persent/100/Experts; // Exp.
Alert("Per l'esperto nella finestra ", Symbol()," assegnato ",Money);
ritorno;// Uscire da init()
}
//--------------------------------------------------------------------
int start()// Speciale. funzione inizio
{
int New_Experts= GlobalVariableGet(Quantity);// Nuovo numero di esperti.
if (Experts!=New_Experts) // Se cambiato
{
Experts=New_Experts; // Ora il numero corrente è
Money=Depo*Persent/100/Experts; // Nuovo valore di exper.
Alert("Nuovo valore per l'esperto ",Symbol(),": ",Money);
}
/*
...
Il codice principale dell'Expert Advisor deve essere specificato qui,
che utilizza il valore della variabile Money
...
*/
ritorno;//uscita da start()
}
//--------------------------------------------------------------------
int deinit()//Propria. funzione deinit()
{
se (Esperti ==1)// Se solo un esperto..
GlobalVariableDel(Quantity); //...cancella le variabili GV
else// Altrimenti..
GlobalVariableSet(Quantity, Experts-1); //...diminuire di 1
Alert("EA viene scaricato dalla finestra ",Symbol()); // Notifica lo scarico
ritorno;// Uscire da deinit()
}
Se non usate il periodo 1 sui prezzi di chiusura, il numero di ripetizioni sarà zero. Ma se contate di colpire qualche gamma, allora il problema potrebbe essere risolvibile e più interessante. In alternativa, possiamo trovare i valori massimi e minimi. Dividiamo la differenza per l'intervallo. Poi definiamo un intervallo che cade in ogni muving (considereremo una matrice che corrisponde a intervalli). L'indice della matrice con il massimo numero di risultati è il vincitore. Forse non sono stato molto chiaro. Il compito doveva essere risolto in un argomento separato. Ci possono essere diverse varianti di soluzione. E in futuro qualcuno potrebbe averne bisogno. E qui non troveranno la fine dopo.
Dovrò pensarci, grazie.
argomento separato - https://forum.mql4.com/ru/66882