Raffinazione spettrometrica - pagina 6

 
Blondi_ >>:


Нет ну человека понять можно... Вот у Вас например в жизни крали идеи? :)

Rubano a tutti, a me e a lui e anche a te, se è arrivato su Internet tutti pensano che non sia più tuo, e non c'è garanzia che qualcuno non scriva il tuo nome sulla tua creazione, ma ho visto molti dei loro consiglieri sotto nomi di altre persone, tu guardi il codice ha ed ecco la tua creazione))) - quindi mi sta bene.

 
qwerewq писал(а) >>

Rubano a tutti, a me e a lui e anche a te, se è arrivato su Internet tutti pensano che non sia più tuo, e non c'è garanzia che qualcuno non scriva il tuo nome sulla tua creazione, ma ho visto molti dei loro consiglieri sotto nomi di altre persone, tu guardi il codice ha ed ecco la tua creazione))) - quindi mi sta bene.

Domanda filosofica, comunque toccata :)

 

Il bordo sinistro è rigidamente legato all'estremo, e l'intero indicatore si "allunga" con l'arrivo di nuove barre e le ampiezze delle armoniche cambiano. Così, quando l'ampiezza della seconda armonica raggiunge il suo massimo, nella sua curva verso la tendenza principale, dovremmo cercare il punto di entrata. Ma il problema è che le correzioni non hanno sempre la struttura "corretta".

Per aggiungere un indicatore al grafico, installate prima una linea verticale, copiate la data vincolante dalle sue proprietà e poi applicate l'indicatore e incollate questa data nelle impostazioni.

File:
spectrometr.mq4  14 kb
 
qwerewq писал(а) >>

Rubano a tutti, a me e a lui e anche a te, se è arrivato su Internet tutti pensano che non sia più tuo, e non c'è garanzia che qualcuno non scriva il tuo nome sulla tua creazione, ma ho visto molti dei loro consiglieri sotto nomi di altre persone, tu guardi il codice ha ed ecco la tua creazione))) - quindi mi sta bene.

Non me ne frega niente neanche a me.

 
Integer писал(а) >>

Non me ne frega niente neanche a me.

Ho ancora bisogno di risolvere la questione "amichevolmente", altrimenti rimarrà un "brutto residuo"... in OGNI caso ... (almeno all'interno del forum)

 

Lo metti su Internet, lo rendi pubblico. Anonimizzato. // parola spaventosa))

È una questione di scopo: o hai intenzione di comprare la birra per il premio Nobel (allora sì - la paternità!!!), o per qualcos'altro. Sul trading, per esempio)).

(Io non firmo nemmeno il mio in quel modo - chi ne ha bisogno lo capirà - sapienti-mutual-sat, e chi non lo fa - beh, fanculo).

 

La fisica, tuttavia ))))

 
Ciao a tutti! Ci sono.... (Traffico:) Va bene gente! Abbiamo scoperto che rubare non è buono, abbiamo scoperto che il signor Integer non si offenderà, ma io, per esempio, non ero soddisfatto di )))). Mi sembra che Indyk dovrebbe essere modificato per auto-selezionare i parametri. Il miglior risultato viene fuori con due estremi... Cosa ne pensate?
 
MVV >>:

Там левый край имеет жесткую привязку к экстремуму, при этом весь индикатор "растягивается" с приходом новых баров и меняются амплитуды гармоник. Вот когда амплитуда второй гармоники станет максимальной, на её перегибе в сторону основного тренда и надо искать точки входа. Но вся беда в том, что коррекции не всегда имеют "правильную" структуру.

Для добавления индикатора к графику сначала установите вертикальную линию, из её свойств скопируйте дату привязки, а затем накладывайте индикатор и в настройках вставьте эту дату.


Ho cercato, ma di nuovo, devi muoverlo con le mani e vuoi una macchina :)))
 

Aiutatemi a rifare un semplice EA, sto lottando da una settimana!!!! Oppure scrivilo di nuovo, tutti gli EA sono troppo complicati e non posso modificarlo per me!

Voglio aggiungere a questo EA un indicatore MACD, che invia i suoi segnali BUY e SELL e l'EA deve fare entrambi allo stesso tempo. Non ci dovrebbero essere più di tre ordini di acquisto aperti e tre ordini di vendita aperti. Tutti gli ordini dovrebbero essere chiusi solo da stoploss e takeprofit, e non dalla forza dell'Expert Advisor.

//--------------------------------------------------------------------
extern int     period_EMA           = 28,
               period_WMA           = 8 ,
               stoploss             = 50,
               takeprofit           = 50,
               risk                 = 10;
double  LOT;
//--------------------------------------------------------------------
double SL, TP;
int TimeBar; //глобальная переменная
//--------------------------------------------------------------------
int start()
{
   if ( TimeBar==Time[0]) return(0);
   if ( TimeBar==0) { TimeBar=Time[0];return(0);}//первый запуск программы
   double EMA0 = iMA(NULL,0, period_EMA,0,MODE_EMA, PRICE_OPEN,0);
   double WMA0 = iMA(NULL,0, period_WMA,0,MODE_LWMA,PRICE_OPEN,0);
   double EMA1 = iMA(NULL,0, period_EMA,0,MODE_EMA, PRICE_OPEN,1);
   double WMA1 = iMA(NULL,0, period_WMA,0,MODE_LWMA,PRICE_OPEN,1);
   if ( EMA0< WMA0&& EMA1> WMA1) //Buy
   {
      TimeBar=Time[0];                            
      TP  = Ask + takeprofit*Point;
      SL  = Ask - stoploss*Point;     
      LOT = LOT( risk,1);
      CLOSEORDER("Sell");
      OPENORDER ("Buy");
   }
   if ( EMA0> WMA0&& EMA1< WMA1) //Sell
   {
      TimeBar=Time[0];                            
      TP = Bid - takeprofit*Point;
      SL = Bid + stoploss*Point;            
      LOT = LOT( risk,1);
      CLOSEORDER("Buy");
      OPENORDER ("Sell");
   }
return(0);
}
//--------------------------------------------------------------------
void CLOSEORDER(string ord)
{
   for (int i=OrdersTotal()-1; i>=0; i--)
   {                                               
      if (OrderSelect( i, SELECT_BY_POS, MODE_TRADES)==true)
      {
         if (OrderSymbol()!=Symbol()) continue;
         if (OrderType()==OP_BUY && ord=="Buy")
            OrderClose(OrderTicket(),OrderLots(),Bid,3,CLR_NONE);// Close Buy
         if (OrderType()==OP_SELL && ord=="Sell")
            OrderClose(OrderTicket(),OrderLots(),Ask,3,CLR_NONE);// Close Sell
      }   
   }
}
//--------------------------------------------------------------------
void OPENORDER(string ord)
{
   int error;
   if ( ord=="Buy" ) error=OrderSend(Symbol(),OP_BUY, LOT,Ask,2, SL, TP,"", 1,3);
   if ( ord=="Sell") error=OrderSend(Symbol(),OP_SELL, LOT,Bid,2, SL, TP,"",-1,3);
   if ( error==-1) //неудачная покупка OK
   {  
      ShowERROR( error,0,0);
   }
return;
}                  
//--------------------------------------------------------------------
void ShowERROR(int Ticket,double SL,double TP)
{
   int err=GetLastError();
   switch ( err )
   {                  
      case 1:                                                                               return;
      case 2:   Alert("Нет связи с торговым сервером   "              , Ticket," ",Symbol());return;
      case 3:   Alert("Error  неправильные параметры   Ticket ",       Ticket," ",Symbol());return;
      case 130: Alert("Error близкие стопы   Ticket ",                 Ticket," ",Symbol());return;
      case 134: Alert("Недостаточно денег   ",                         Ticket," ",Symbol());return;
      case 146: Alert("Error Подсистема торговли занята ",             Ticket," ",Symbol());return;
      case 129: Alert("Error Неправильная цена ",                      Ticket," ",Symbol());return;
      case 131: Alert("Error Неправильный объем ",                     Ticket," ",Symbol());return;
      case 4051:Alert("Error Недопустимое значение параметра функции ", Ticket," ",Symbol());return;
      case 4105:Alert("Error Ни один ордер не выбран ",                Ticket," ",Symbol());return;
      case 4063:Alert("Error Ожидается параметр типа integer ",        Ticket," ",Symbol());return;
      case 4200:Alert("Error Объект уже существует ",                  Ticket," ",Symbol());return;
      default:  Alert("Error  " , err,"   Ticket ",                     Ticket," ",Symbol());return;
   }
}
//--------------------------------------------------------------------
double LOT(int risk,int ord)
{
   double MINLOT = MarketInfo(Symbol(),MODE_MINLOT);
   LOT = AccountFreeMargin()* risk/100/MarketInfo(Symbol(),MODE_MARGINREQUIRED)/ ord;
   if ( LOT>MarketInfo(Symbol(),MODE_MAXLOT)) LOT = MarketInfo(Symbol(),MODE_MAXLOT);
   if ( LOT< MINLOT) LOT = MINLOT;
   if ( MINLOT<0.1) LOT = NormalizeDouble( LOT,2); else LOT = NormalizeDouble( LOT,1);
   return( LOT);
}
//--------------------------------------------------------------------