Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 538
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
Ho appena messo il testo e il codice, e il codice è elencato come codice. Non so come funziona il resto del codice. Se deve essere evidenziato, non è una domanda per me ma per gli sviluppatori del sito.
Ho una contro-domanda: come fate a inserire il codice? Guarda, ho inserito il codice correttamente - gli operatori sono evidenziati. E che dire di te prima? Ci sono linee inutili, gli operatori non sono evidenziati. Sono curioso, cosa fai con il codice, prima di incollarlo?
La sequenza delle operazioni è la seguente:
1. Inserire il codice copiato da ME
2. Selezionalo
3. Seleziona il tipo di testo
код
/******************Expert deinitialization function******************/
void OnDeinit(const int reason)
{
Comment("");
}/*******************************************************************/
E nessuna evidenziazione...
O si seleziona il codice di tipo testo e poi si incolla lì il codice copiato.
E con la CRS è evidenziato.
La sequenza delle operazioni è la seguente:
1. Inserire il codice copiato da ME
2. Selezionalo
3. Seleziona il tipo di testo
код
/******************Expert deinitialization function******************/
void OnDeinit(const int reason)
{
Comment("");
}/*******************************************************************/
E nessuna evidenziazione...
Oppure seleziona il codice di tipo testo e poi incolla lì il codice copiato.
E con SRC con evidenziazione.
Spero che vi siate resi conto che l'unico modo corretto è l'ultimo - via SRC.
Vladimir, non dipende da me. Mi è capitato di provare questo modo di inserimento per caso una volta, ho visto come funzionava e non l'ho mai usato senza osservazioni. E ora ho appena spiegato a tutti come può funzionare.
Forse gli amministratori del forum ci penseranno su e riassegneranno l'azione di tipo testo "codice" per chiamare la finestra di inserimento del codice, o cambieranno qualcos'altro.
Vladimir, non dipende da me. Mi è capitato di provare questo modo di inserimento per caso una volta, ho visto come funzionava e non l'ho mai usato senza osservazioni. E ora ho appena spiegato a tutti come può funzionare...
Forse gli amministratori del forum ci penseranno e riassegneranno l'azione di tipo testo "codice" per chiamare la finestra di inserimento del codice, o cambieranno qualcos'altro.
Perché non c'è una conferma manuale negli Advisors ora? Non li usi?
Non sono un battitore, ovviamente, ma non importa. Quindi dovrei fidarmi di tutti i consulenti ora? Dopo tutto, i test non sono una garanzia al 100%.
{' - parentesi sbilanciate tma2.mq4 48 1
extern int TakeProfit =100;
extern int StopLoss =50;
extern double Lots = 0.01;
extern int Slippage =5;
extern string comment ="Sell";
extern int Megic = 123;
extern string Indi = "dati dell'indicatore";
extern string TimeFrame = "current time frame";//current time frame
extern int HalfLength = 56;
extern int Price = PRICE_CLOSE;
extern double ATRMultiplier = 2.0;
extern inttern ATRPeriod = 100;
extern bool Interpolate = true;
doppio PriceHigh, PriceLow, SL, TP;
biglietto int;
int init()
{0
if(Digits==3|| Digits==5)
{
TakeProfit*=10;
StopLoss*=10;
Scivolamento*=10;
}
ritorno(0);
}
int start()
{0
PriceHigh= iCustom(Symbol(),0, "TMA with Distancer",TimeFrame,HalfLength,Price, ATRMultiplier,ATRPeriod, Interpolate,1,0);
PriceLow= iCustom(Symbol(),0, "TMA with Distancer",TimeFrame,HalfLength,Price, ATRMultiplier,ATRPeriod, Interpolate,2,0);
if(Bid>=(PriceHigh);
{
SL=NormalizeDouble(Bid+StopLoss*Point,Digits);
TP=NormalizeDouble(Bid-TakeProfit*Point,Digits);
ticket=OrderSend(Simbol(),OP_SELL,Lots,Bid,Slippage,0,0,comment,123,0,Maroon);
se(biglietto>0);
{
se (OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)==true);
OrderModify(ticket,OrderOpenPrice,ST,TP,0);
}
}
se(Ask<0);
{
ST=NormalizeDouble(Ask-StopLoss*Point,Digits);
TP=NormalizeDouble(Ask+TakeProfit*Point,Digits);
ticket=OrderSend(Simbol(),OP_BUY,Lots,Ask,Slippage,0,0,comment,123,0,clrDarkBlue);
se(biglietto>0);
{
se (OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)==true);
OrderModify(ticket,OrderOpenPrice,ST,TP,0);
}
ritorno(0);
}
int CountSell()
{
int count=0;
for(int trede=OrdersTotal()-1;tred>=0;tread--)
{
OrderSelect(trade,SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==Megic)
{
if(OrderType()==OP_SELL)count==;
}
}
return(count);
}
int CountBuy()
{
int count=0;
for(int trede=OrdersTotal()-1;tred>=0;tread--)
{
OrderSelect(trade,SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==Megic)
{
if(OrderType()==OP_BUY)count==;
}
}
return(count);
}0
Puoi per favore dirmi come fare in modo che quando il prezzo raggiunge il livello SL, l'ordine inizia la media?
void OnTick()
{
doppio ma;//dichiarare una variabile
doppio start_lot;//dichiarare una variabile
ma=iMA(Symbol(),0,10,0,0,0,1);//assegnare alla variabile una media mobile
if(Ask>ma)//se il prezzo è superiore alla variabile
{
if(OrdersTotal()==0)//se(nessun ordine aperto
{
OrderSend(Symbol(),OP_BUY,lot,Ask,30,Bid-StopLoss*Point,Ask+TakeProfit*Point,"",0,0,clrGreen);
}
}
se(Bid<ma)//
{
se(OrdiniTotali()==0)
{
OrderSend(Symbol(),OP_SELL,lot,Bid,30,Ask+StopLoss*Point,Bid-TakeProfit*Point,",0,0,clrRed);
}
//if(Bid)=StopLoss)
{
// lot=NormalizeDouble(start_lot*MathPow(koeficient,sumbay),2)
}
}
}