Perfeccionamiento de los espectrómetros - página 6

 
Blondi_ >>:


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

Roban a todo el mundo, a mí y a él y a ti también, si se metió en Internet todos piensan que ya no es tuyo, y no hay garantía de que alguien no escriba tu nombre en tu creación, pero he visto a muchos de sus asesores bajo nombres ajenos, miras el código ha y ahí está tu creación))) - así que me parece bien.

 
qwerewq писал(а) >>

Roban a todo el mundo, a mí y a él y a ti también, si se coló en Internet todos piensan que ya no es tuyo, y no hay garantía de que alguien no escriba tu nombre en tu creación, pero he visto a muchos de sus asesores bajo nombres ajenos, miras el código ha y ahí está tu creación))) - así que me parece bien.

Cuestión filosófica, sin embargo, tocada :)

 

El borde izquierdo está rígidamente ligado al extremo, y todo el indicador se "estira" con la llegada de nuevas barras y las amplitudes de los armónicos cambian. Así, cuando la amplitud del segundo armónico alcanza su máximo, en su curva hacia la tendencia principal, debemos buscar el punto de entrada. Pero el problema es que las correcciones no siempre tienen la estructura "correcta".

Para añadir un indicador al gráfico, primero instale una línea vertical, copie la fecha de vinculación de sus propiedades y luego aplique el indicador y pegue esta fecha en los ajustes.

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

Roban a todo el mundo, a mí y a él y a ti también, si se metió en Internet todos piensan que ya no es tuyo, y no hay garantía de que alguien no escriba tu nombre en tu creación, pero he visto a muchos de sus asesores bajo nombres ajenos, miras el código ha y ahí está tu creación))) - así que me parece bien.

A mí tampoco me importa una mierda.

 
Integer писал(а) >>

A mí tampoco me importa una mierda.

Deberíamos resolver esto "amistosamente" de todos modos. Deja un "residuo desagradable"... en cualquier caso... ( al menos dentro del foro )

 

Si lo pones en Internet, lo haces público. Anonimizados. // palabra de miedo))

Es una cuestión de propósito: o piensas comprar cerveza para el Premio Nobel (entonces sí - ¡¡¡autoridad!!!), o para otra cosa. En el comercio, por ejemplo).

(Yo ni siquiera firmo el mío así - quien lo necesite lo entenderá - sapienti-mutual-sat, y quien no - bueno, que se joda).

 

La física, sin embargo ))))

 
¡Hola a todos! Tengo allí .... (Suspiros) Tráfico:) ¡Muy bien, gente! Descubrimos que robar no es bueno, descubrimos que el Sr. Entero no se ofenderá, pero yo, por ejemplo, no estaba satisfecho con )))). Me parece que Indyk debería ser modificado para auto-seleccionar los parámetros. El mejor resultado sale con dos extremos... ¿Qué te parece?
 
MVV >>:

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

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


Lo he buscado, pero de nuevo, tienes que moverlo con las manos y quieres una máquina :)))
 

¡¡¡¡Ayúdame a rehacer un simple EA, he estado luchando por una semana!!!! O escríbelo de nuevo, ¡todos los EAs son demasiado complicados y no puedo ajustarlos para mí!

Quiero añadir a este EA un indicador MACD, que envía sus señales de COMPRA y VENTA y el EA tiene que hacer las dos cosas a la vez. No debe haber más de tres órdenes de COMPRA y tres de VENTA abiertas. Todas las órdenes deben ser cerradas por stoploss y takeprofit solamente, y no por la fuerza del Asesor Experto.

//--------------------------------------------------------------------
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);
}
//--------------------------------------------------------------------