Back to the index page  
  FAQ   Cerca   Lista utenti   Gruppi   Registrati   Profilo   Messaggi privati   Log in 
Costruzione Expert Advisor di gruppo - FabryEA
Vai a Precedente  1, 2, 3  Successivo
 
Nuovo argomento   Quest'argomento è chiuso: Non puoi inserire, rispondere o modificare i messaggi.    Indice del forum » Metatrader - Expert Advisor - MQL Precedente :: Successivo  
Ads
 Inviato: Mer Ott 18, 2017 3:44 am  
Messaggio
  Ads




 MessaggioInviato: Lun Mar 18, 2013 7:01 pm Rispondi citando  
Messaggio
  BadBoy
Trader part-time
Trader part-time

Registrato: 29/02/12 22:47
Messaggi: 174
Residenza: Ravenna

carlo10 ha scritto:

1) si parte con un hedge sullo stesso livello di prezzo (linea nera).


Ciao Carlo. Come vuoi impostare questo livello? Prezzo da variabile esterna? o Buy e Sell immediati al momento di attivazione dell'EA?

_________________
Programmatore di Sistemi Automatici per il Trading

Solamente gli utenti registrati possono vedere link su questo forum!
Registrati oppure Autenticati su questo forum.


Solamente gli utenti registrati possono vedere link su questo forum!
Registrati oppure Autenticati su questo forum.


E-Mail:

Solamente gli utenti registrati possono vedere link su questo forum!
Registrati oppure Autenticati su questo forum.

Skype: ProTradingSoftware
Profilo Invia messaggio privato Invia e-mail HomePage
 MessaggioInviato: Lun Mar 18, 2013 9:13 pm Rispondi citando  
Messaggio
  carlo10
Site Admin
Site Admin

Registrato: 29/04/06 16:19
Messaggi: 5575
Residenza: Padova

Ciao BadBoy,

mi fa piacere la tua domanda, spero tu possa partecipare attivamente vista la tua esperienza nella programmazione.

Attualmente lo start è gestito con variabili esterne e vengono piazzati 2 oppure 4 pendenti.

Le variabili esterne di start servono proprio a determinare dove si vuole far partire l'ea e sono 9:

Codice:
//Variabili esterne
/*Prezzi più bassi
extern double  start0         =  1.1800;
extern double  start1         =  1.1900;
extern double  start2         =  1.2000;
extern double  start3         =  1.2100;
extern double  start4         =  1.2200;
extern double  start5         =  1.2300;
extern double  start6         =  1.2400;
extern double  start7         =  1.2500;
extern double  start8         =  1.2600;


C'è un check nell' init() che verifica che i valori siano in ordine crescente e distinti tra loro.

Codice:
//start devono essere in ordine crescente e distinti
 if(!(start0 < start1 && start1 < start2 && start2 < start3 && start3 < start4
         && start4 < start5 && start5 < start6 && start6 < start7 && start7 < start8)){
      Alert("Le variabili start devono essere inserite in ordine crescente, non sono ammessi valori uguali!");
      invalid_input = true;
   }


Ovviamente si possono verificare 3 condizioni:
- il prezzo attuale è più basso dello start0 -> piazzo 2 pendenti
- il prezzo attuale si trova all'interno di 2 start -> piazzo 2 pendenti
- il prezzo attuale è più alto dello start 8 -> piazzo 4 pendenti

Questo è gestito in questa funzione:

Codice:
int openStartOrders(){
   int ticket;

   if(debug)
      Print("openStartOrders()");
     
   if(debug)
      Print("ArraySize(startArray): ", ArraySize(startArray));     
   
 
   RefreshRates();
   //prezzo inferiore al minimo apro 2 pendenti
   if(Ask < start0){
   
      startPrice  = start0;
      tpBuy1      = startPrice + (target_pips * adjPoint);
      tpSell1     = startPrice - (target_pips * adjPoint);
     
      ticket = OrderSend2(OP_BUYSTOP, lots, startPrice, sl_canale, target_pips);
      if(ticket == -1){
         error = true;
         Print("ERRORE: ", GetLastError());
         return(-1);
      }
      ticket = OrderSend2(OP_SELLLIMIT, lots, startPrice, sl_canale, target_pips);
      if(ticket == -1){
         error = true;
         Print("ERRORE: ", GetLastError());
         return(-1);
      }
     
   }//fine apertura 2 pendenti Ask < start0
   
   else{
   
      RefreshRates();
      //prezzo superiore al massimo apro 2 pendenti   
      if(Bid > start8){
     
         startPrice = start8;
         tpBuy1      = startPrice + (target_pips * adjPoint);
         tpSell1     = startPrice - (target_pips * adjPoint);         
         
         ticket = OrderSend2(OP_BUYLIMIT, lots, startPrice, sl_canale, target_pips);
         if(ticket == -1){
            error = true;
            Print("ERRORE: ", GetLastError());
            return(-1);
         }         
         ticket = OrderSend2(OP_SELLSTOP, lots, startPrice, sl_canale, target_pips);
         if(ticket == -1){
            error = true;
            Print("ERRORE: ", GetLastError());
            return(-1);
         }
                 
      }//fine apertura 2 pendenti Bid > start8
     
      //prezzo all'interno apro 4 pendenti
      else{
         
         RefreshRates();
         startPrice1 = startArray[ArrayBsearch(startArray, Bid)];
         
         ticket = OrderSend2(OP_BUYLIMIT, lots, startPrice1, sl_canale, target_pips);
         if(ticket == -1){
            error = true;
            Print("ERRORE: ", GetLastError());
            return(-1);
         }
       
         ticket = OrderSend2(OP_SELLSTOP, lots, startPrice1, sl_canale, target_pips);
         if(ticket == -1){
            error = true;
            Print("ERRORE: ", GetLastError());
            return(-1);
         }
         
         
         RefreshRates();   
         startPrice2 = startArray[ArrayBsearch(startArray, Ask) + 1];
                 
         ticket = OrderSend2(OP_BUYSTOP, lots, startPrice2, sl_canale, target_pips);
         if(ticket == -1){
            error = true;
            Print("ERRORE: ", GetLastError());
            return(-1);
         }
       
         ticket = OrderSend2(OP_SELLLIMIT, lots, startPrice2, sl_canale, target_pips);
         if(ticket == -1){
            error = true;
            Print("ERRORE: ", GetLastError());
            return(-1);
         }
                         
      }//fine else apertura 4 pendenti
   }
   
   if(continuos_run == false)
      stop = true;
   
   return(0);   
}


Lo startArray è una variabile globale che viene inizializzata nell'init.

Nel caso di apertura di 4 pendenti, nel momento in cui 2 di questi si attivano, gli altri 2 vengono cancellati.

Ci sono 9 variabili di start perchè, per la logica dell'ea, non ci si ferma ad ogni ciclo ma si continuano ad aprire nuovi cicli in automatico una volta terminato un giro.

_________________
remitur ha scritto:
Mi rammento di quando studiavo azionario e futures, allora si usava una metafora, ma secondo mè è una gran verità, nel Klondike al tempo dei cercatori d'oro guadagnavano di più e sopratutto in maniera costante i venditori di pale, setacci e attrezzi vari (Ross e libri vari) che i cercatori; tranne qualcuno. chissà quale era la percentuale ?
Profilo Invia messaggio privato Invia e-mail HomePage
 MessaggioInviato: Lun Mar 18, 2013 9:49 pm Rispondi citando  
Messaggio
  BadBoy
Trader part-time
Trader part-time

Registrato: 29/02/12 22:47
Messaggi: 174
Residenza: Ravenna

Si, quello l'ho visto. Volevo sapere nella versione nuova come volevate fare. Perchè io in questa fase mi atterrei allo schema, quindi solo un livello di "partenza".

_________________
Programmatore di Sistemi Automatici per il Trading

Solamente gli utenti registrati possono vedere link su questo forum!
Registrati oppure Autenticati su questo forum.


Solamente gli utenti registrati possono vedere link su questo forum!
Registrati oppure Autenticati su questo forum.


E-Mail:

Solamente gli utenti registrati possono vedere link su questo forum!
Registrati oppure Autenticati su questo forum.

Skype: ProTradingSoftware
Profilo Invia messaggio privato Invia e-mail HomePage
 MessaggioInviato: Mar Mar 19, 2013 8:33 pm Rispondi citando  
Messaggio
  carlo10
Site Admin
Site Admin

Registrato: 29/04/06 16:19
Messaggi: 5575
Residenza: Padova

Secondo me la logica di questa prima fase va lasciata così com'è.

Quando inserisco l'EA non so se il prezzo andrà su o giù ma so che voglio farlo scattare a determinati livelli chiave.

Allo stesso modo quando si chiude un ciclo non so quale sarà il livello successivo di partenza ma non voglio che l'EA rimanga fermo ma che scatti al successivo livello impostato.

_________________
remitur ha scritto:
Mi rammento di quando studiavo azionario e futures, allora si usava una metafora, ma secondo mè è una gran verità, nel Klondike al tempo dei cercatori d'oro guadagnavano di più e sopratutto in maniera costante i venditori di pale, setacci e attrezzi vari (Ross e libri vari) che i cercatori; tranne qualcuno. chissà quale era la percentuale ?
Profilo Invia messaggio privato Invia e-mail HomePage
 MessaggioInviato: Dom Mar 24, 2013 12:25 pm Rispondi citando  
Messaggio
  carlo10
Site Admin
Site Admin

Registrato: 29/04/06 16:19
Messaggi: 5575
Residenza: Padova

Allego una nuova versione dell'ea con 2 correzioni inviatemi da mirkobar:

Solamente gli utenti registrati possono vedere link su questo forum!
Registrati oppure Autenticati su questo forum.



Quella sull'ordertotals iniziale in particolare è fondamentale nel caso ci siano altre posizioni aperte da qualche altro ea oppure manualmente.

_________________
remitur ha scritto:
Mi rammento di quando studiavo azionario e futures, allora si usava una metafora, ma secondo mè è una gran verità, nel Klondike al tempo dei cercatori d'oro guadagnavano di più e sopratutto in maniera costante i venditori di pale, setacci e attrezzi vari (Ross e libri vari) che i cercatori; tranne qualcuno. chissà quale era la percentuale ?
Profilo Invia messaggio privato Invia e-mail HomePage
 MessaggioInviato: Lun Mar 25, 2013 10:34 pm Rispondi citando  
Messaggio
  mirkobar
Aspirante Trader
Aspirante Trader

Registrato: 12/09/12 21:23
Messaggi: 64

Hi Guys,
Carlo, excuse me if i modified the expert's debug.
I did this to get know when and where it gets error.

I had one joker error caused by
  
/ *********** ALTRI ORDINI DI COMPENSAZIONE ********************* /

When it :
Both orders, first and second level buy and sell executed.
the numbers buy orders executed are equal to the numbers Sell orders executed .
Buy lots are equal to Sell lots.

the compensation order is sent when the situation changes, one order is closed by price target reached, but too late and we have error 130.
It will be sent without error later if the price goes back to a value greater than stoplevel.
If this does not happen we have a loss.

I found this context only once. I tried to find it again, but I did not found it yet, maybe i'm not look out enough !

I hope this help Carlo to find out why this happens.
I am not been able to understand it, sorry.

Mirko.

expert>


Solamente gli utenti registrati possono vedere link su questo forum!
Registrati oppure Autenticati su questo forum.



journal >


Solamente gli utenti registrati possono vedere link su questo forum!
Registrati oppure Autenticati su questo forum.

Profilo Invia messaggio privato
 MessaggioInviato: Mar Mar 26, 2013 12:08 am Rispondi citando  
Messaggio
  carlo10
Site Admin
Site Admin

Registrato: 29/04/06 16:19
Messaggi: 5575
Residenza: Padova

Hi mirkobar,

thank you so much for helping me.

I'll try to fix the problem in the next days, your hints are welcome!

Best regards,
Carlo

_________________
remitur ha scritto:
Mi rammento di quando studiavo azionario e futures, allora si usava una metafora, ma secondo mè è una gran verità, nel Klondike al tempo dei cercatori d'oro guadagnavano di più e sopratutto in maniera costante i venditori di pale, setacci e attrezzi vari (Ross e libri vari) che i cercatori; tranne qualcuno. chissà quale era la percentuale ?
Profilo Invia messaggio privato Invia e-mail HomePage
 MessaggioInviato: Mer Giu 05, 2013 5:14 pm Rispondi citando  
Messaggio
  francesco72
Professore
Professore

Registrato: 19/06/10 23:06
Messaggi: 1869

Ciao Carlo,
qualche novità su questo fronte? Sto provando a fare un pò di conti guardando gli storici, e sembra funzionare la strategia.
Spero che riusciremo a farla andare in porto.
Un salutone e grazie.
Profilo Invia messaggio privato
 MessaggioInviato: Gio Giu 06, 2013 8:57 am Rispondi citando  
Messaggio
  carlo10
Site Admin
Site Admin

Registrato: 29/04/06 16:19
Messaggi: 5575
Residenza: Padova

Ciao francesco72,

non ci ho ancora messo mano, mi sto liberando da un impegno prossimamente dovrei avere un pò più tempo a disposizione in modo da rimettermi al lavoro.

Ho visto anche i messaggi nell'altra discussione e fate bene a ricordarmi l'impegno che mi sono preso, se c'è interesse significa che la strategia è interessante.

Voglio solo evitare di rilasciare qualcosa di non affidabile come la scorsa volta.

Perdonatemi per l'attesa.

Carlo

_________________
remitur ha scritto:
Mi rammento di quando studiavo azionario e futures, allora si usava una metafora, ma secondo mè è una gran verità, nel Klondike al tempo dei cercatori d'oro guadagnavano di più e sopratutto in maniera costante i venditori di pale, setacci e attrezzi vari (Ross e libri vari) che i cercatori; tranne qualcuno. chissà quale era la percentuale ?
Profilo Invia messaggio privato Invia e-mail HomePage
 MessaggioInviato: Gio Giu 06, 2013 11:07 am Rispondi citando  
Messaggio
  dragstar
Trader
Trader

Registrato: 11/12/11 16:03
Messaggi: 343
Residenza: Italia

Ciao,
io ho iniziato a fare qualche test (semplice) su mql. Vorrei dare una mano, ma (non essendo in grado e quindi di minimo aiuto Very Happy) per ora mi limiterò a leggere il codice e l'altro post per capire la strategia.
Profilo Invia messaggio privato
 MessaggioInviato: Gio Giu 06, 2013 11:12 pm Rispondi citando  
Messaggio
  carlo10
Site Admin
Site Admin

Registrato: 29/04/06 16:19
Messaggi: 5575
Residenza: Padova

Ottimo dragstar mi fa piacere, se non si inizia non si impara mai.

_________________
remitur ha scritto:
Mi rammento di quando studiavo azionario e futures, allora si usava una metafora, ma secondo mè è una gran verità, nel Klondike al tempo dei cercatori d'oro guadagnavano di più e sopratutto in maniera costante i venditori di pale, setacci e attrezzi vari (Ross e libri vari) che i cercatori; tranne qualcuno. chissà quale era la percentuale ?
Profilo Invia messaggio privato Invia e-mail HomePage
 MessaggioInviato: Gio Giu 13, 2013 3:51 pm Rispondi citando  
Messaggio
  francesco72
Professore
Professore

Registrato: 19/06/10 23:06
Messaggi: 1869

carlo10 ha scritto:
Ciao francesco72,

non ci ho ancora messo mano, mi sto liberando da un impegno prossimamente dovrei avere un pò più tempo a disposizione in modo da rimettermi al lavoro.

Ho visto anche i messaggi nell'altra discussione e fate bene a ricordarmi l'impegno che mi sono preso, se c'è interesse significa che la strategia è interessante.

Voglio solo evitare di rilasciare qualcosa di non affidabile come la scorsa volta.

Perdonatemi per l'attesa.

Carlo


Ciao Carlo,
ragionevolmente, da quanto sono le prove e i test sugli storici, sembra una cosa profittevole, e anche da quanto si prevede dall'esperienza sulle griglie.
Credo valga la pena di realizzarlo, cosa che ci permetterà anche di fare back test su periodi più lunghi di quanto si possa fare a mano.
Grazie mille!
Profilo Invia messaggio privato
 MessaggioInviato: Gio Giu 13, 2013 7:03 pm Rispondi citando  
Messaggio
  carlo10
Site Admin
Site Admin

Registrato: 29/04/06 16:19
Messaggi: 5575
Residenza: Padova

francesco72, ti assicuro che è mia intenzione realizzarlo, cercherò di ritagliarmi il tempo necessario in modo da portarlo avanti un pò per volta.

Ho pensato ad un nuovo approccio che dovrebbe essere più robusto in modo da evitare i bug che sono emersi con questa versione.

Appena ho aggiornamenti li condivido in questa discussione.

_________________
remitur ha scritto:
Mi rammento di quando studiavo azionario e futures, allora si usava una metafora, ma secondo mè è una gran verità, nel Klondike al tempo dei cercatori d'oro guadagnavano di più e sopratutto in maniera costante i venditori di pale, setacci e attrezzi vari (Ross e libri vari) che i cercatori; tranne qualcuno. chissà quale era la percentuale ?
Profilo Invia messaggio privato Invia e-mail HomePage
 MessaggioInviato: Lun Dic 16, 2013 6:22 pm Rispondi citando  
Messaggio
  flux91
Trader
Trader

Registrato: 25/04/12 20:16
Messaggi: 302

Dopo mesi cerco di riaprire la discussione....

Carlo hai per caso novità? Sei riuscito a procedere un po' ?

_________________
Che tu possa avere sempre il vento in poppa, che il sole ti risplenda in viso e che il vento del destino ti porti in alto a danzare con le stelle.

Blow
Profilo Invia messaggio privato
 MessaggioInviato: Lun Dic 16, 2013 8:42 pm Rispondi citando  
Messaggio
  carlo10
Site Admin
Site Admin

Registrato: 29/04/06 16:19
Messaggi: 5575
Residenza: Padova

Ciao flux91, mi spiace ma non sono più andato avanti. Chiedo umilmente scusa per il momento.

_________________
remitur ha scritto:
Mi rammento di quando studiavo azionario e futures, allora si usava una metafora, ma secondo mè è una gran verità, nel Klondike al tempo dei cercatori d'oro guadagnavano di più e sopratutto in maniera costante i venditori di pale, setacci e attrezzi vari (Ross e libri vari) che i cercatori; tranne qualcuno. chissà quale era la percentuale ?
Profilo Invia messaggio privato Invia e-mail HomePage
Nuovo argomento   Quest'argomento è chiuso: Non puoi inserire, rispondere o modificare i messaggi.    Indice del forum » Metatrader - Expert Advisor - MQL

Pagina 2 di 3
Tutti i fusi orari sono GMT + 2 ore
Vai a Precedente  1, 2, 3  Successivo

Mostra prima i messaggi di:

  

Vai a:  
Non puoi inserire nuovi argomenti
Non puoi rispondere a nessun argomento
Non puoi modificare i tuoi messaggi
Non puoi cancellare i tuoi messaggi
Non puoi votare nei sondaggi
c d
e

CI SIAMO TRASFERITI QUI: http://forum.forexup.biz





Powered by phpBB © 2001, 2002 phpBB Group phpbb.it
Macinscott 2 by Scott Stubblefield


Abuse - Segnalazione abuso - Utilizzando questo sito si accettano le norme di TOS & Privacy.
Powered by forumup.it forum gratis free, crea il tuo forum gratis free ora! Created by Hyarbor & Qooqoa
Confirmed

Page generation time: 0.419