[ARCHIVE] フォーラムを散らかさないように、どんなルーキーでも質問してください。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 3. - ページ 355

 
FelixFX:



しかし、それなら配列は7次元でなければならないのでは?

for (g=0;g<=100000;g++){

for (a=0;a<=100;a++){

for (b=0;b<=100;b++){ 

jaw_val1=iMA(NULL, 0, a, b, MODE_SMMA, PRICE_MEDIAN, g);

if (jaw_val1<=Close[g]) continue;

for (c=0;c<=100;c++){

for (d=0;d<=100;d++){

jaw_val2=iMA(NULL, 0, c, d, MODE_SMMA, PRICE_MEDIAN, g); 

if (jaw_val2<=Close[g]) continue;

for (e=0;e<=100;e++){

for (f=0;f<=100;f++){

jaw_val3=iMA(NULL, 0, f, e, MODE_SMMA, PRICE_MEDIAN, g); 

if (jaw_val3>Close[g]) sum=sum+(High[g]-Low[g]); 

}}}}}}}   
オプティマイゼーション・ライト
 
最後のフラクタルの最大値を要求する方法を教えてください。
 
nadya:
最後のフラクタルの最大値を要求する方法を教えてください。

この ページの中程です。
 
Roman.:

この ページの中程です。
ありがとうございました。
 
PostMessageAを使用してEAをオフにするにはどうしたらいいですか?(アドバイザーズボタンを押す)
 
nadya:
最後のフラクタルの最大値を要求する方法を教えてください。
最後のフラクタルは、唯一のフラクタルです。そして、もしそれが唯一のフラクタルであれば、他に比較するものがないため、最大でもあり最小でもあるのです。
 
serler2:
PostMessageAを使用してEAをオフにするにはどうしたらいいですか?(アドバイザーズボタンを押す)

図書館

次のページ

// 5. Функция включения/отключения эксперта.
void ExpertEnabled(bool bSwitch) // TRUE - включить эксперт, FALSE - отключить эксперт.
 {
  if (bSwitch) {if (!IsExpertEnabled()) ServiceSetExperts();} // Если требуется разрешить работу эксперта. Разрешаем работу экспертов, если она была запрещена.
  else {if (IsExpertEnabled()) ServiceSetExperts();} // Если требуется запретить работу эксперта. Запрещаем работу экспертов, если она была разрешена.
 }
 
splxgf:
最適化ライト。


ありがとうございました。しかし

for (g=0;g<=100000;g++){

実行中のタスクの条件によって、必然的に最後のループとなる。

 
FelixFX:


ありがとうございました。しかし

for (g=0;g<=100000;g++){

は、実行されるタスクの条件によって、必ずしも最後のループでなければなりません。

あなたのコードサンプルには、そのような依存性はありません。別の例を挙げれば、別の解が得られる。 それが最適化というものです。

 

こんにちは。

私は独学で、これがプログラミングの第一歩です。

トレーニングや実用を目的としたインジケーターを作成しています。

Expert Advisorで取引基準を開発する場合、既成の指標を使用する方が便利です。

この指標では、複数の指標を組み合わせる(コンポジットする)ことも試みています。

しかし、うまくいきません。ターミナルがハングアップしてしまい、正しくレンダリングされません。

私は何を間違えているのだろう?よろしくお願いします。

コメント、批判、修正、推薦を受けたいが、嘲笑は受けない(生まれつきのエースはいない・・・そして誰もがこの道を歩んできたのだ)。

私たちが取り組んでいる指標は、カスタム指標です。すべて問題なく、正常に動作しています。

説明が必要な場合は、いつでもお手伝いします。

/**********************************************************/
// Иникатор ME_Proboy_F5_Complex_v3.mq4
// Комплексный индикатор включающий в себя анализ
// - Нахождение сигнала пробоя линии построенной по Frac5-5;
// - Выставление ордеров;
// - Времени жизни ордеров;
// - Cрабатывание ордера;
// - Срабатывание стопа;   
// - Срабатывание профита; 
//
// Данный индикатор отображает значение ордеров (Buy, Sell) как графически,  
// 
//-----         
// 2.period_Teni  - определяет за какой период будет расчитываться средняя тень. 
//-----         
// 4.min_order - минимально допустимое расстояние от экстремума свечи до ордера  
//               в пунктах.  
// 5.koef_R     =    1.5;  
//-----         
#property indicator_separate_window 

#property indicator_buffers       8         
#property indicator_color1        Blue  
#property indicator_color2        DeepPink
#property indicator_color3        Blue
#property indicator_color4        DeepPink 
#property indicator_color5        LightPink    
#property indicator_color6        LightPink  
#property indicator_color7        LightGreen  
#property indicator_color8        LightGreen  

#property indicator_maximum  4         //верхнее ограничение шкалы отдельного окна индикатора 
#property indicator_minimum -4        //нижнее ограничение шкалы отдельного окна индикатора 
#property indicator_level1 0.0         //горизонтальный уровень N в отдельном окне индикатора, где N от 1 до 8 
#property indicator_levelcolor Silver // цвет горизонтальных уровней индикатора 
#property indicator_levelwidth 1      //толщина горизонтальных уровней индикатора 


// -------------------- Для обращения к индикатору пробоя фрактала 5 ----------------
extern   int       T_Life_CDL        =  0;                         // Ограничительная область в 5 ть свечек                                                               
extern   bool      Img_UP_DW         =  true;                      // Рисовать или нет линии по понижающимся верхним фракталам
extern   color     Color_UP_D        =  Lime;                      // Цвет линий по верхним фракталам                                                                
extern   bool      Img_DW_UP         =  true;                      // Рисовать или нет линии по повышающимся нижним фракталам
extern   color     Color_DW_UP       =  DeepPink;                      // Цвет линий по нижним фракталам
// -------------------- Для обращения к индикатору конвертов ----------------
extern   int       mode_MA           =  1;        //усреднение                
extern   int       price_MA          =  0;        //цена для расчёта МА
extern  double     period_MA         =  120;
extern  double     period_ATR        =  12; 
extern  double     k_step_ATR        =  1.0;      
// -------------------- Для обращения к индикатору уровня ордера ---------------- 
extern  int        period_Teni       =  12;
//extern  int        period_ATR        =  12;  
extern  double     min_order         =  0;   
extern  double     koef_R            =  1.5;  
extern  bool       text              =  false; 
extern  int        T_Life_ORD        =  2;
//--------------------------------------------
        double     spred;
        int        O_Buy,
                   O_Sel,
                   D_Buy,
                   D_Sel,
                   S_Buy,
                   S_Sel,
                   P_Buy,
                   P_Sel;
//-------------------------------------------------------------------

double Order_Buy[]; 
double Order_Sel[];
double Deal_Buy[]; 
double Deal_Sel[];
double Stop_Buy[];
double Stop_Sel[];
double Profit_Buy[];
double Profit_Sel[]; 

//+===========================================================================+ 
int init()  
   { 
     SetIndexBuffer (0, Order_Buy); 
     SetIndexStyle  (0, DRAW_HISTOGRAM, STYLE_SOLID, 2); 
     SetIndexLabel  (0,"Ордер Buy");
    //-----         
     SetIndexBuffer (1, Order_Sel);  
     SetIndexStyle  (1, DRAW_HISTOGRAM, STYLE_SOLID, 2); 
     SetIndexLabel  (1,"Ордер Sell");
     
     SetIndexBuffer (2, Deal_Buy); 
     SetIndexStyle  (2, DRAW_HISTOGRAM, STYLE_SOLID, 4); 
     SetIndexLabel  (2,"Покупка");
    //-----         
     SetIndexBuffer (3, Deal_Sel);  
     SetIndexStyle  (3, DRAW_HISTOGRAM, STYLE_SOLID, 4); 
     SetIndexLabel  (3,"Продажа");
     
     SetIndexBuffer (4, Stop_Buy); 
     SetIndexStyle  (4, DRAW_HISTOGRAM, STYLE_SOLID, 6); 
     SetIndexLabel  (4,"Стоп Buy");
    //-----         
     SetIndexBuffer (5, Stop_Sel);  
     SetIndexStyle  (5, DRAW_HISTOGRAM, STYLE_SOLID, 6); 
     SetIndexLabel  (5,"Стоп Sell");
     
     SetIndexBuffer (6, Profit_Buy);  
     SetIndexStyle  (6, DRAW_HISTOGRAM, STYLE_SOLID, 6); 
     SetIndexLabel  (6,"Профит Buy");
     
     SetIndexBuffer (7, Profit_Sel);  
     SetIndexStyle  (7, DRAW_HISTOGRAM, STYLE_SOLID, 6); 
     SetIndexLabel  (7,"Профит Sell");
     IndicatorShortName ("Сделка ПРОБОЙ 5");
     
     spred=MarketInfo(NULL,MODE_SPREAD);
     
     IndicatorDigits(Digits);
     if (Digits <= 3) double K = 0.01; else K = 0.0001; 
     
    // double Pink_Level=Pink_Level * K;
    
    return(0); 
   } 
//+===========================================================================+ 
int start(){

    int i,Counted_bars;     
    Counted_bars =Bars- IndicatorCounted();
             
    for (i = Counted_bars-1; i>=0;i++){
    
            Order_Buy[i] = 0; 
            Order_Sel[i] = 0;
            Deal_Buy[i]  = 0; 
            Deal_Sel[i]  = 0;
            Stop_Buy[i]  = 0;
            Stop_Sel[i]  = 0;
            Profit_Buy[i]= 0;
            Profit_Sel[i]= 0;   
//----------------получаем пробой 5 фракталов              
       double proboy_5_UP = iCustom (NULL,0,"ME_Proboy_F5_For_EX",T_Life_CDL ,Img_UP_DW, Lime, Img_DW_UP, DeepPink,0,i);  
       double proboy_5_DW = iCustom (NULL,0,"ME_Proboy_F5_For_EX",T_Life_CDL ,Img_UP_DW, Lime, Img_DW_UP, DeepPink,1,i);
//----------------если пробой есть,то выставляем ордер       
       int n;
       
        if (proboy_5_UP==1){
         
          double Buy= iCustom(NULL,0,"ME_Order_ATR_For_EX",period_Teni,period_ATR,min_order,koef_R,text,0,i);
          int    num_Buy=i;
          double Buy_Stop=iCustom(NULL,0,"ME_Order_ATR_For_EX",period_Teni,period_ATR,min_order,koef_R,text,2,i);
          double Buy_Profit=iCustom(NULL,0,"ME_Order_ATR_For_EX",period_Teni,period_ATR,min_order,koef_R,text,4,i);
          
          O_Buy=1; 
       
//---------------проверяем время жизни        
         if (O_Buy==1 && Buy<=High[i]+spred && num_Buy >=i-T_Life_ORD+1 ){
            Buy=0;
            Buy_Stop=0;  
            Buy_Profit=0; 
         }
         if (O_Buy==1 && Buy<=High[i]+spred) D_Buy=3;
         if (D_Buy==3 && Buy_Stop>=Low[i]) S_Buy=2;
         if (D_Buy==3 && S_Buy!=2 && Buy_Profit<=High[i]) P_Buy=2;
       }
      
//----------------если пробой есть,то выставляем ордер           
       if (proboy_5_DW==-1){
          double Sel= iCustom(NULL,0,"ME_Order_ATR_For_EX",period_Teni,period_ATR,min_order,koef_R,text,1,i);
          int    num_Sel=i;
          double Sel_Stop=iCustom(NULL,0,"ME_Order_ATR_For_EX",period_Teni,period_ATR,min_order,koef_R,text,3,i);
          double Sel_Profit=iCustom(NULL,0,"ME_Order_ATR_For_EX",period_Teni,period_ATR,min_order,koef_R,text,5,i);
          O_Sel=-1; 
        
       
//---------------проверяем время жизни           
          if (Sel==-1 && Sel<=High[i]+spred && num_Sel >=i-T_Life_ORD+1 ){
            Sel=0;
            Sel_Stop=0;  
            Sel_Profit=0; 
          }
          if (Sel==-1 && Sel<=High[i]+spred) D_Sel=-3;
          if (D_Sel==-3 && Sel_Stop<=High[i]) S_Sel=-2;
          if (Sel==-1 && S_Sel!=-2 &&Sel_Profit>=Low[i]) P_Sel=-2;
      
      
   
   
   
  
//=========================================== Вывод результатов ============================================
            Order_Buy[i] = O_Buy; 
            Order_Sel[i] = O_Sel;
            Deal_Buy[i]  = D_Buy; 
            Deal_Sel[i]  = D_Sel;
            Stop_Buy[i]  = S_Buy;
            Stop_Sel[i]  = S_Sel;
            Profit_Buy[i]= P_Buy;
            Profit_Sel[i]= P_Sel; 
            
         }
         
       }
       return(0);       
}
           
          

私はFORGIVEN THANK YOU FOR PARTICIPATIONとYOU HELP、respectfully、Olgaです。