Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 6. - pagina 350

 
Forexman77:

Nell'immagine, ho segnato con una freccia dove dovrebbe essere l'uscita. Non capisco quale sia il problema. Entriamo, ricordiamo l'ora,

Poi esci quando il tempo è più lungo dell'entrata con un offset di un periodo e il prezzo è sotto la MA min a 3 giorni.

Il codice è il seguente:

Cosa suggerisce?

Vendi vicino all'Ascus! È più alto! Ask-Bid=spread;

Correggete questa linea di codice:

if  (Bid <= MA_2_t)

// на

if  (Ask <= MA_2_t)

Poi si chiuderà come desiderato, ma può invertire in qualsiasi momento. Dobbiamo accontentarci di poco!

 
Forexman77:


Nell'immagine, ho segnato con una freccia dove dovrebbe essere l'uscita. Non capisco quale sia il problema. Entriamo, ricordiamo l'ora,

Poi esci quando il tempo è più lungo dell'entrata con un offset di un periodo e il prezzo è sotto la MA min a 3 giorni.

Il codice è il seguente:

Cosa ne pensate?


Voglio dire che sarebbe bene postare degli screenshot dove si può vedere il prezzo e il timeframe. Forse c'è del pipsing su M1 e il server non ha il tempo di elaborare l'ordine in tempo.


E invece di t=Time[0]; meglio usare OrderOpenTime().

 
evillive:

Se non è troppo segreto, voglio dire che sarebbe bene pubblicare degli screenshot dove si possono vedere prezzi e tempi. Forse c'è del pipsing in M1 e il server non ha tempo per elaborare l'ordine.


Usate OrderOpenTime() invece di t=Time[0];.

Eureka! Ho capito perché.

segnale > 0,006 quasi sempre, quindi continua ad aggiornare t=Time[0]; e il trade non si chiude.

Ho messo t=Time[0]; nel blocco in cui si annuncia l'apertura di una posizione.

 

Ciao a tutti, come si comporta l'EA in prova contro i gap? Cioè, sul test mostra un buon profitto, ma sulla demo è già da due giorni che sta facendo gapping su tutto :(.

 

Ciao a tutti!

Ho fatto l'EA incrociando due EMA, questo è il mio primo EA e ho paura di aver fatto qualche errore stupido, quindi sto chiedendo ai professionisti di rivedere il codice e darmi qualche consiglio se qualcosa è sbagliato.

Questo EA dovrebbe scambiare su bitcoin exchange, il prezzo può saltare del 30% al giorno, quindi stoploss e takeprofit dovrebbero essere in percentuale del prezzo.

L'ho provato sul conto demo, sembra funzionare, ma ho paura di usarlo sul conto reale, il lotto minimo è di circa 7 dollari, e il conto al centesimo non ha broker.

Non ho ancora attaccato il trailing stop, e ho intenzione di confrontare la differenza EMA non con zero, ma con qualche piccolo valore, per evitare scambi frequenti quando le curve corrono parallele.

Il programma è per lo più composto da pezzi e pezzetti presi da esempi e tutorial, quindi c'è la preoccupazione che io possa aver fatto un casino da qualche parte nel metterlo insieme.

Variabili:

#property copyright "me"
#property link      "killnosock.net"
extern int SlowEma = 21;
extern int FastEma = 10;
extern int MaxRisk = 100;// % депо которое будет использоваться для открытия ордера
extern int  TakeProfit=100;
extern int  StopLoss=100;
extern int Slippage = 10;

int LastBars = 0;

int init(){return(0);}
int deinit() {return(0);}

Questa funzione definisce la dimensione del lotto:

double GetLot(int Risk)
{double Free    =AccountFreeMargin();
 double One_Lot =MarketInfo(Symbol(),MODE_MARGINREQUIRED);
 double Min_Lot =MarketInfo(Symbol(),MODE_MINLOT);
 double Max_Lot =MarketInfo(Symbol(),MODE_MAXLOT);
 double Step    =MarketInfo(Symbol(),MODE_LOTSTEP);
 double Lot     =MathFloor(Free*Risk/100/One_Lot/Step)*Step;
 if(Lot<Min_Lot) Lot=Min_Lot;
 if(Lot>Max_Lot) Lot=Max_Lot;
 if(Lot*One_Lot>Free) {
 Alert(" free= ", AccountFreeMargin()," for one lot= ", MarketInfo(Symbol(),MODE_MARGINREQUIRED)," lot= ", Lot);
 return(0.0);}
return(Lot);}

Apriamo un ordine qui:

int NewOrder(int Cmd,double Lot)
{double TP=0; //takeprofit
 double SL=0; //stoploss
 double PR=0; //price
 color clr = CLR_NONE;
 while(!IsTradeAllowed()) Sleep(10);
 RefreshRates();
 if(Cmd==OP_BUY)
   {PR=Ask;
    if(TakeProfit>0) TP=Ask + Ask*TakeProfit/100;
    if(StopLoss>0) SL=Ask - Ask*StopLoss/100;
    if(SL<0) SL = 0;
    if(TP<0) TP = 0;
    clr = Green;}
 if(Cmd==OP_SELL)
   {PR=Bid;
    if(TakeProfit>0) TP=Bid - Bid*TakeProfit/100;
    if(StopLoss>0) SL=Bid + Bid*StopLoss/100;
    if(SL<0) SL = 0;
    if(TP<0) TP = 0;
    clr = Red;}
 int tic=OrderSend(Symbol(),Cmd,Lot,PR,Slippage,SL,TP,"",0,0,clr);
 if(tic<0) Print("Open order error: ",GetLastError());
return(tic);}

Qui chiudiamo 1 o tutti gli ordini

//CloseOrder
void CloseOrder()
{double PR=0;
 while(!IsTradeAllowed()) Sleep(10);
 RefreshRates();
 if(OrderType()==OP_BUY)  PR=Bid;
 if(OrderType()==OP_SELL) PR=Ask;
 if(!OrderClose(OrderTicket(),OrderLots(),PR,Slippage,CLR_NONE))
   Print("Order close error: ",GetLastError());
return;}

//Close all Orders
void CloseAllOrders()
{
  for(int i=OrdersTotal()-1;i>=0;i--)
   if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
     {
      CloseOrder();
     }
return;}

Questa funzione calcola la differenza di due EMA

double EmaDiff(int shift)
   {
      double difference;
      difference = iMA(Symbol(),0,FastEma,0,MODE_EMA,PRICE_CLOSE,shift)
                 - iMA(Symbol(),0,SlowEma,0,MODE_EMA,PRICE_CLOSE,shift);
      return(difference);
   }

Ed ecco il corpo del programma

int start()
  {
double Lot;
    // действуем, когда открывается новая свечка
    if (LastBars == Bars) return(0);
    else LastBars = Bars;
      {         
         if ((EmaDiff(1) > 0) && (EmaDiff(2) < 0))
            {
               CloseAllOrders();
               Lot = GetLot(MaxRisk);
               NewOrder(OP_BUY,Lot);
            }
            
         if ((EmaDiff(2) > 0) && (EmaDiff(1) < 0))
            {
               CloseAllOrders();
               Lot = GetLot(MaxRisk);
               NewOrder(OP_SELL,Lot);
            }                    
      }
   return(0);
  }
 

Cari signori ciao a tutti!!!

Aiutatemi a fare gli accordi!!! C'è un set con offerte, l'ho scaricato da un sito dove c'era un concorso dove il tizio con 10000 dollari per un mese o una settimana non ricordo ha fatto 300 000 dollari! Come posso dire dove ha chiuso l'affare!!! Orario di apertura, prezzo, lotto, coppia di valute tutto lì!!!

.........................................................................................................................................................................................................................................


CI SONO COSÌ TANTI SCAMBI CHE NON SO DOVE LI HA CHIUSI TUTTI!


I risultati sono visualizzati a partire dal 2013-08-29 14:02:05(EET)


TRANSAZIONE TEMPO TIPO LOTTI SIMBOLO PREZZO SWAP PROFITTO

272984 2013-08-05 07:58:50 VENDERE 1.00 EURAUD 1.49556 0 0

272986 2013-08-05 07:58:56 VENDERE 1.00 EURAUD 1.49553 0 0

272988 2013-08-05 07:59:03 VENDERE 1.00 EURAUD 1.49549 0 0

272999 2013-08-05 07:59:57 VENDERE 1.00 EURAUD 1.49534 0 0

273002 2013-08-05 08:00:02 VENDERE 1.00 EURAUD 1.4954 0 0

273004 2013-08-05 08:00:07 VENDERE 1.00 EURAUD 1.4954 0 0

284429 2013-08-05 16:47:27 BUY 1.00 EURAUD 1.48839 0 628.85

284432 2013-08-05 16:47:33 COMPRARE 1.00 EURAUD 1.48838 0 629.71

284433 2013-08-05 16:47:37 COMPRARE 1.00 EURAUD 1.48843 0 625.28

284435 2013-08-05 16:47:43 COMPRARE 1.00 EURAUD 1.48857 0 612.81

284439 2013-08-05 16:47:47 COMPRARE 1.00 EURAUD 1.48854 0 615.46

284442 2013-08-05 16:47:50 COMPRARE 1.00 EURAUD 1.48859 0 611.01

284443 2013-08-05 16:47:51 COMPRARE 1.00 EURAUD 1.48859 0 0

284447 2013-08-05 16:48:01 BUY 1.00 AUDUSD 0.89056 0 0

284449 2013-08-05 16:48:09 VENDERE 1.00 EURAUD 1.48735 0 -110.44

284451 2013-08-05 16:48:21 BUY 1.00 AUDUSD 0.89061 0 0

284454 2013-08-05 16:48:25 BUY 1.00 AUDUSD 0.8906 0 0

284458 2013-08-05 16:48:30 BUY 1.00 AUDUSD 0.89058 0 0

284461 2013-08-05 16:48:34 BUY 1.00 AUDUSD 0.89051 0 0

284465 2013-08-05 16:48:39 BUY 1.00 AUDUSD 0.89052 0 0

284469 2013-08-05 16:48:43 BUY 1.00 AUDUSD 0.89053 0 0

284472 2013-08-05 16:48:47 BUY 1.00 AUDUSD 0.89051 0 0

284475 2013-08-05 16:48:51 BUY 1.00 AUDUSD 0.89056 0 0

284479 2013-08-05 16:48:55 BUY 1.00 AUDUSD 0.89056 0 0

284483 2013-08-05 16:48:59 BUY 1.00 AUDUSD 0.89056 0 0

284487 2013-08-05 16:49:03 BUY 1.00 AUDUSD 0.89058 0 0

284491 2013-08-05 16:49:08 BUY 1.00 AUDUSD 0.89053 0 0

284492 2013-08-05 16:49:12 BUY 1.00 AUDUSD 0.89053 0 0

286130 2013-08-05 16:51:55 BUY STOP 1.00 AUDUSD 0.8915 0 0

288418 2013-08-05 16:52:05 BUY STOP 1.00 AUDUSD 0.89255 0 0

293964 2013-08-05 16:52:14 BUY STOP 1.00 AUDUSD 0.8935 0 0

299297 2013-08-05 16:52:26 BUY STOP 1.00 AUDUSD 0.89459 0 0

299482 2013-08-05 16:52:35 BUY STOP 1.00 AUDUSD 0.89553 0 0

299533 2013-08-05 16:52:53 BUY STOP 1.00 AUDUSD 0.89655 0 0

299595 2013-08-05 16:53:02 BUY STOP 1.00 AUDUSD 0.89703 0 0

300040 2013-08-05 16:53:36 BUY STOP 1.00 AUDUSD 0.89751 0 0

300096 2013-08-05 16:53:46 BUY STOP 1.00 AUDUSD 0.898 0 0

300151 2013-08-06 07:54:49 VENDERE 1,00 AUDUSD 0,89756 4,36 519,04

300153 2013-08-06 07:54:53 VENDERE 1,00 AUDUSD 0,89749 4,36 512,04

300154 2013-08-06 07:54:58 VENDERE 1,00 AUDUSD 0,89743 4,36 506,04

300156 2013-08-06 07:55:01 VENDERE 1.00 AUDUSD 0.89738 4.36 501.04

300158 2013-08-06 07:55:05 VENDERE 1.00 AUDUSD 0.89736 4.36 499.04

300160 2013-08-06 07:55:11 VENDERE 1,00 AUDUSD 0,89772 4,36 535,04

300161 2013-08-06 07:55:15 VENDERE 1,00 AUDUSD 0,89771 4,36 534,04

300163 2013-08-06 07:55:19 VENDERE 1,00 AUDUSD 0,89765 4,36 528,04

300167 2013-08-06 07:55:36 VENDERE 1.00 AUDUSD 0.89733 4.36 496.04

300169 2013-08-06 07:55:40 VENDERE 1,00 AUDUSD 0,89733 4,36 496,04

300171 2013-08-06 07:55:44 VENDERE 1,00 AUDUSD 0,89735 4,36 498,04

300173 2013-08-06 07:55:49 VENDERE 1,00 AUDUSD 0,89732 4,36 495,04

300178 2013-08-06 07:55:52 VENDERE 1,00 AUDUSD 0,89725 4,36 488,04

300181 2013-08-06 07:55:56 VENDERE 1.00 AUDUSD 0.89714 4.36 477.04

 
FEAR:

Cari signori ciao a tutti!!!

Aiutatemi a fare gli accordi!!! C'è un set con offerte, l'ho scaricato da un sito dove c'era un concorso dove il tizio con 10000 dollari per un mese o una settimana non ricordo ha fatto 300 000 dollari! Come posso dire dove ha chiuso l'affare!!! Orario di apertura, prezzo, lotto, coppia di valute tutto lì!!!

.........................................................................................................................................................................................................................................

CI SONO COSÌ TANTI SCAMBI CHE NON SO DOVE LI HA CHIUSI TUTTI!

Non c'è modo, non specificano un orario di chiusura e un prezzo, non ci sono omaggi ))))
 
evillive:
Non c'è modo, non specificano il prezzo di chiusura di proposito, non c'è free())


CAPISCO MA C'È UN LOTTO E UN PREZZO E UN ACQUISTO O UNA VENDITA PER ESEMPIO:


284429 2013-08-05 16:47:27 BUY 1.00 EURAUD 1.48839 0 628.85

IL PREZZO È 1,48839 COPPIA DI VALUTE -EURAUD, LOTTO 1 BROKER 5 MARK!!! PROFITTO 628 CIOÈ IL PREZZO È SALITO DI 628 PIPS!!! al lotto 1!!! cioè se si può guardare la storia, non capisco, onestamente l'ora è quasi 17:00 ma il prezzo è molto più basso di questo 1,48839!!! ANCHE SE QUESTO È IL PREZZO DI CHIUSURA HO CONTATO 7000 PIPS NON CAPISCO COME

 
FEAR:


CAPISCO MA C'È UN LOTTO E UN PREZZO E UN ACQUISTO O UNA VENDITA PER ESEMPIO:


284429 2013-08-05 16:47:27 BUY 1.00 EURAUD 1.48839 0 628.85

IL PREZZO È 1,48839 COPPIA DI VALUTE -EURAUD, LOTTO 1 BROKER 5 MARK!!! PROFITTO 628 CIOÈ IL PREZZO È SALITO DI 628 PIPS!!! al lotto 1!!! cioè se si può guardare la storia, non capisco, onestamente l'ora è quasi 17:00 ma il prezzo è molto più basso di questo 1,48839!!! ANCHE SE È IL PREZZO DI CHIUSURA HO CONTATO 7000 PIPS NON CAPISCO COME SIA POSSIBILE


Dove hai contato 7000 pips? È il prezzo di apertura, ma anche se fosse il prezzo di chiusura, un solo prezzo non è sufficiente per contare qualcosa lì, hai ancora bisogno di entrambi. Penso che sia solo un falso, a meno che il concorso sia durato fino al 18 dicembre, quando questa posizione avrebbe potuto essere chiusa con 630 pip di profitto. Ma prima sarebbe stato costretto a sedersi su un drawdown di circa -830 pips (per 4zn), non molto intelligente, la strategia è un guano così triste...


L'avrei perso sul conto reale, funziona su una demo quando ho molto denaro virtuale )))

 

evillive, buon pomeriggio, grazie per avermi indicato la direzione giusta!!!



r772ra, ciao, grazie per aver spiegato l'errore esibendo il codice corretto (considero questo il modo migliore per imparare (pratica (-Fai la teoria, amico mio, e l'albero della vita è sempreverde.-)).