Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 611

 
Alexander Mikryukov:

Buon pomeriggio. Puoi dirmi cosa c'è che non va? Voglio colorare i livelli Fibo in diversi colori, ma non sono colorati in alcun modo. Qui sotto c'è il codice di quello che sto facendo. Grazie in anticipo per l'aiuto.

C'è una risposta a pagina 603.

Любые вопросы новичков по MQL4, помощь и обсуждение по алгоритмам и кодам
Любые вопросы новичков по MQL4, помощь и обсуждение по алгоритмам и кодам
  • 2018.08.18
  • www.mql5.com
В этой ветке я хочу начать свою помощь тем, кто действительно хочет разобраться и научиться программированию на новом MQL4 и желает легко перейти н...
 
Alexey Viktorov:

La pagina 603 ha la risposta.

Ma perché non funziona, visto che sembra essere scritto correttamente!!!!

       ObjectCreate(0,"Fb_"+InpName,OBJ_FIBO,window,time1,price1,time2,price2);
            ObjectSet("Fb_"+InpName,OBJPROP_COLOR,clrDimGray);
            ObjectSet("Fb_"+InpName,OBJPROP_STYLE,STYLE_DOT);
            ObjectSet("Fb_"+InpName,OBJPROP_LEVELS,levels);
            ObjectSet("Fb_"+InpName,OBJPROP_RAY_RIGHT,false);
            for(int k=0;k<levels;k++)
              {
               //--- значение уровня
               ObjectSetDouble(0,"Fb_"+InpName,OBJPROP_LEVELVALUE,k,values[k]);
               ObjectSetInteger(0,"Fb_"+InpName,OBJPROP_LEVELCOLOR,k,colors[k]);
               ObjectSetInteger(0,"Fb_"+InpName,OBJPROP_LEVELSTYLE,k,styles[k]);
               ObjectSetFiboDescription("Fb_"+InpName,k,deskript[k]);
              }
 
Alexander Mikryukov:

Ma perché non funziona, visto che sembra essere scritto correttamente!!!!

C'è stata una discussione qui. Per favore, non ripetete la stessa domanda in tutto il forum.

 
Anche questo non funziona (:
            ObjectCreate(0,"Fb_"+InpName,OBJ_FIBO,window,time1,price1,time2,price2);
            ObjectSet("Fb_"+InpName,OBJPROP_COLOR,clrDimGray);
            ObjectSet("Fb_"+InpName,OBJPROP_STYLE,STYLE_DOT);
            ObjectSet("Fb_"+InpName,OBJPROP_LEVELS,6);
            ObjectSet("Fb_"+InpName,OBJPROP_RAY_RIGHT,false);
           
               ObjectSetDouble(0,"Fb_"+InpName,OBJPROP_LEVELVALUE,0,1);
               ObjectSetInteger(0,"Fb_"+InpName,OBJPROP_LEVELCOLOR,0,clrDarkGray);
               ObjectSetInteger(0,"Fb_"+InpName,OBJPROP_LEVELSTYLE,0,STYLE_DOT);
               ObjectSetFiboDescription("Fb_"+InpName,0,"100");

               ObjectSetDouble(0,"Fb_"+InpName,OBJPROP_LEVELVALUE,1,0.236);
               ObjectSetInteger(0,"Fb_"+InpName,OBJPROP_LEVELCOLOR,1,clrGreen);
               ObjectSetInteger(0,"Fb_"+InpName,OBJPROP_LEVELSTYLE,1,STYLE_DOT);
               ObjectSetFiboDescription("Fb_"+InpName,1,"23.6 [%$]");

               ObjectSetDouble(0,"Fb_"+InpName,OBJPROP_LEVELVALUE,2,0.382);
               ObjectSetInteger(0,"Fb_"+InpName,OBJPROP_LEVELCOLOR,2,clrRed);
               ObjectSetInteger(0,"Fb_"+InpName,OBJPROP_LEVELSTYLE,2,STYLE_DOT);
               ObjectSetFiboDescription("Fb_"+InpName,2,"38.2 [%$]");
 
//+-------------------------------------------------------------------------------------+
//| Savin.mq4 |
//| Copyright 2014, Gnatenko Global Group, VADIMBETMAN Inc.
//| http://vadimbetman.ucoz.com |
//+-------------------------------------------------------------------------------------+
#property copyright "Copyright 2014, Gnatenko Global Group, VADIMBETMAN Inc.
#proprietà link "http://vadimbetman.ucoz.com"
//+-------------------------------------------------------------------------------------+
//extern int TakeProfit = 20;
extern int StopLoss = 100;
//+-------------------------------------------------------------------------------------+
//| funzione di inizializzazione dell'esperto |
//+-------------------------------------------------------------------------------------+
void init(){
//----
//----
}
//+-------------------------------------------------------------------------------------+
//| funzione di deinizializzazione esperto |
//+-------------------------------------------------------------------------------------+
void deinit(){
//----
//----
}
//+-------------------------------------------------------------------------------------+
//| funzione di inizio esperto |
//+-------------------------------------------------------------------------------------+
void start(){
//----
doppio Take1 = Ask+20 *Point;
doppio Take2 = Ask+0 *Point;
doppio Take3 = Ask-20 *Point;
doppio Take4 = Ask-40 *Point;
doppio Take5 = Ask-60 *Point;
doppio Stop = Bid-StopLoss *Point;
se(OrdiniTotali()==0){
OrderSend(Symbol(),0,0.01,Ask,30,Stop,Take1,",0,0,0,CLR_NONE);
OrderSend(Symbol(),2,0.02,Ask-20*Point,30,Stop,Take2,"",0,0,0,CLR_NONE);
OrderSend(Symbol(),2,0.04,Ask-40*Point,30,Stop,Take3,",0,0,0,CLR_NONE);
OrderSend(Symbol(),2,0.08,Ask-60*Point,30,Stop,Take4,",0,0,0,CLR_NONE);
OrderSend(Symbol(),2,0.16,Ask-80*Point,30,Stop,Take5,"",0,0,0,CLR_NONE);
}
}
//----
//+-------------------------------------------------------------------------------------+

//+-------------------------------------------------------------------------------------+

Puoi aggiungere

quando un ordine è stato chiuso su take profit, tutti gli ordini pendenti e urgenti dovrebbero essere chiusi.

 

SanNneK:

...

Puoi aggiungere

Quando un ordine è stato chiuso su Take Profit, tutti gli ordini pendenti e di emergenza dovrebbero essere chiusi.

Questo è un aiuto per risolvere i problemi quando non puoi farlo da solo, non una società altruista.

Se hai bisogno di qualcuno che lo scriva per te, sei il benvenuto qui.

 
@Artyom Trishkin Ho bisogno di scrivere un codice quando qualsiasi ordine raggiunge il take profit, tutti gli altri ordini in sospeso e al solito chiusi, non ho bisogno di altri consulenti
 
SanNneK:
@Artyom Trishkin Ho bisogno di scrivere il codice quando qualsiasi ordine raggiunge il take profit, tutti gli altri ordini in sospeso e al solito chiusi, non ho bisogno di altri consulenti.

Iniziare a scrivere codice. Quello che non puoi fare, chiedi, mostrami il tuo codice e ti aiuteranno.

 
Buon pomeriggio Ragazzi, per favore consigliate dove trovare informazioni. Il compito è quello di determinare la fascia di prezzo e aprire gli ordini sulla sua penetrazione. Ci sono 2 metodi per determinare questo intervallo. Il primo modo è quello di determinare il minimo e il massimo agli intervalli di tempo specificati. Il secondo modo è quello di cercare i primi frattali diversamente diretti in un determinato lasso di tempo e questo intervallo viene scambiato. Non riesco a trovare algoritmi simili che si adattino alle mie esigenze. (Per favore, aiutatemi...))
 

Ho scritto del codice che quando scatta il take profit del primo ordine di acquisto, tutti gli ordini pendenti vengono chiusi, ma non funziona, evidenziato in blu ciò che non funziona

void start(){

//----

doppio Take1 = Ask+20 *Point;

doppio Take2 = Ask+0 *Point;

doppio Take3 = Ask-20 *Point;

doppio Take4 = Ask-40 *Point;

doppio Take5 = Ask-60 *Point;

doppio Stop = Bid-StopLoss *Point;

se(OrdiniTotali()==0){

OrderSend(Symbol(),0,0.01,Ask,30,Stop,Take1, "sdsdasdadwadawd",0,0,CLR_NONE);

OrderSend(Symbol(),2,0.02,Ask-20*Point,30,Stop,Take2, "awda",0,0,CLR_NONE);

OrderSend(Symbol(),2,0.04,Ask-40*Point,30,Stop,Take3, "awdawd",0,0,CLR_NONE);

OrderSend(Symbol(),2,0.08,Ask-60*Point,30,Stop,Take4, "awdawd",0,0,CLR_NONE);

OrderSend(Symbol(),2,0.16,Ask-80*Point,30,Stop,Take5, "awdawdawda",0,0,CLR_NONE);

}


se(OP_BUY==Take1)

{

OrderDelete(2);

}

se(OP_BUY==Take1)

{

OrderDelete(3);

}

se(OP_BUY==Take1)

{

OrderDelete(4);

}

se(OP_BUY==Take1)

{

OrderDelete(5);

ritorno(0);

}


}