Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 92
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
Quindi controlla il numero di posizioni aperte sulla candela zero di M15. Se hai già una posizione ed è aperta su una candela M15 null, allora non aprirne altre.
for (i=OrdersTotal()-1;i>=0;i--)
{
RefreshRates();
if(OrderSelect (i, SELECT_BY_POS, MODE_TRADES) == true) a = 0;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic) b++;
}
Non sono molto bravo a programmare, ma questo modulo lo fa
}
Prova a fare un controllo per una nuova barra su H1
for (i=OrdersTotal()-1;i>=0;i--)
{
RefreshRates();
if(OrderSelect (i, SELECT_BY_POS, MODE_TRADES) == true) a = 0;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic) b++;
}
if( stM1 <= 20 && stM0 > 20 && stH0 > 70 && b==0 && opp != iTime(_Symbol,PERIOD_H1,0)) // покупка
{
opp = iTime(_Symbol,PERIOD_H1,0);
RefreshRates();
op = Ask;
Prova una nuova barra di controllo su H1
for (i=OrdersTotal()-1;i>=0;i--)
{
RefreshRates();
if(OrderSelect (i, SELECT_BY_POS, MODE_TRADES) == true) a = 0;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic) b++;
}
if( stM1 <= 20 && stM0 > 20 && stH0 > 70 && b==0 && opp != iTime(_Symbol,PERIOD_H1,0)) // покупка
{
opp = iTime(_Symbol,PERIOD_H1,0);
RefreshRates();
op = Ask;
Non sono molto bravo a programmare, ma questo modulo lo fa
for (i=OrdersTotal()-1;i>=0;i--)
{
RefreshRates();
if(OrderSelect (i, SELECT_BY_POS, MODE_TRADES) == true) a = 0;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic) b++;
}
No, non è assolutamente quello che fa questo pezzo di codice.
Devi controllare che la barra di apertura della posizione sul periodo M15 non sia uguale a zero - allora puoi aprire una posizione:
{
// код открытия позиции
}
Ciao, aiutami con le classi, cosa sto sbagliando?
classe ASDCiao, aiutami con le classi, cosa sto sbagliando?
classe ASDIniziate leggendo l'articolo.
Lo leggo, ma non lo capisco bene.
Ecco cosa ottengo:
classe:
{
private:
// Здесь располагаются переменные и функции, доступные только внутри класса
int c(int m_a,int m_b)
{
m_a=a+b; m_b=a-b;
int m_d=m_a+m_b;
d=m_d;
return(c(m_a,m_b));
}
public:
int a;
int b;
int d;
};
sceneggiatura:
ASD ar;
//+------------------------------------------------------------------+
//| Script program start function |
//+------------------------------------------------------------------+
void OnStart()
{
ar.a=1;
ar.b=3;
Alert(ar.d);
}
//+------------------------------------------------------------------+
L'allarme dà zero. Cosa c'è che non va?
Lo leggo, ma non lo capisco bene.
Ecco cosa ottengo:
classe:
L'allarme dà zero. Cosa c'è che non va?
È difficile inserire il codice tramite il pulsante SRC?
Ho inserito il codice corretto per voi.
Lo leggo, ma non lo capisco bene.
Ecco cosa ottengo:
classe:
{
private:
// Здесь располагаются переменные и функции, доступные только внутри класса
int c(int m_a,int m_b)
{
m_a=a+b; m_b=a-b;
int m_d=m_a+m_b;
d=m_d;
return(c(m_a,m_b));
}
public:
int a;
int b;
int d;
};
sceneggiatura:
ASD ar;
//+------------------------------------------------------------------+
//| Script program start function |
//+------------------------------------------------------------------+
void OnStart()
{
ar.a=1;
ar.b=3;
Alert(ar.d);
}
//+------------------------------------------------------------------+
L'allarme dà zero. Cosa c'è che non va?
All'interno della classe, fate delle stampe ai valori. E poi guardate nel log cosa verrà stampato quando lo script viene eseguito ;)