どんな新人の質問でも、フォーラムを乱雑にしないように。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 6. - ページ 295

 
MaximuS60:

最初から指をくわえて見ているわけではなく、答えというかヒントを待つことにします。
なぜ指なのか?なぜ空なのか?こちら です。ヒントをくれる。
 
MaximuS60:

空から指をさすようなことにならないように、答えというかヒントを待つことにします。

最後に、コードの中を覗いてみましょうまた、スプレッドも考慮されています。

         if (zeroprice>Ask) //Хотите больше, поставьте несколько пипок*Point 

         if (zeroprice<Bid) //.
//                                                          











でも、コツコツではなく、真剣に学んだほうがいいんです!」。エキスパート・アドバイザーは、専門家の適切な監視なしには一日たりとも機能しません。

トレーディングはゲームではなく、知識と努力が必要な難しい職業であり、市場の予測不可能性からしばしば非標準的なソリューションが必要とされます。慎重であることを祈ります。

 
artmedia70:

文字列で。

NULLは現在のシンボルを意味する。Symbol()と同様、現在の文字でもあります。正しく書かれていますね。

質問:変数RSI_1はどのような型ですか?



タイプダブル

わからない))が、NULLに直したら、そのまま動くようになりました。

 

みなさん、こんにちは。

カスタムインジケーターを ベースに3日平均のインジケーターを作ろうとした。

直線を描きます。何が問題なのでしょうか?

#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Yellow

//--- buffers
double ExtMapBuffer1[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
   SetIndexStyle(0,DRAW_LINE,0,2);
   SetIndexBuffer(0,ExtMapBuffer1);
   IndicatorDigits(Digits+1);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//---- 
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
    int counted_bars=IndicatorCounted(),                      
    limit;
    double
    MA_1_t,                                                 
    MA_2_t,
    MA_3_t;
 
   if(counted_bars>0)
      counted_bars--;
   limit=Bars-counted_bars;
   for(int i=0;i<limit;i++)
   {
      MA_1_t=iCustom(NULL, 0, "EMAF",0,0);  
      MA_2_t=iCustom(NULL, 0, "EMAF",0,1);
      MA_3_t=iCustom(NULL, 0, "EMAF",0,2);
      {
      ExtMapBuffer1[i]=(MA_1_t + MA_2_t + MA_3_t)/3;
      }
   }
   return(0);
  }
//+------------------------------------------------------------------+
 
Forexman77:

皆さん、こんにちは。

カスタムインジケーターをベースに3日平均のインジケーターを作ろうとした。

直線を描きます。何が問題なのでしょうか?

...ブラケットをつけるマニア?

for(int i=0;i<limit;i++)
   {
      MA_1_t=iCustom(NULL, 0, "EMAF",0,i);
      MA_2_t=iCustom(NULL, 0, "EMAF",0,i+1);
      MA_3_t=iCustom(NULL, 0, "EMAF",0,i+2);
      ExtMapBuffer1[i]=(MA_1_t + MA_2_t + MA_3_t)/3;
   }
 
TarasBY:

...ブラケットマニア?




ありがとうございます!!!ゼロチェックのことをすっかり忘れていました)効いてますね!!!!

ブラケット...私もたまにやります。

正しい配置を読んでいればいいのですが、どこにも書いてありません。

 
borilunad:

最後に、コードの中を覗いてみましょうまた、スプレッドも考慮されています。

でも、コツコツではなく、真剣に学んだほうがいいんです!」。エキスパート・アドバイザーは、専門家の適切な監視なしには一日たりとも機能しません。

トレーディングはゲームではなく、知識と努力が必要な難しい職業であり、市場の予測不可能性からしばしば非標準的なソリューションが必要とされます。頑張ってほしいです!


しゃい

が、ここで理解したように

if (zeroprice>Ask)

if (zeroprice<Bid)

は、CUEが現在の価格より上か下かをチェックします。

これはEAではなく、スクリプトです。

ここで変数を追加できるかどうか質問です: if (OrderModify(OrderTicket(),0,OrderStopLoss(),zeroprice+Spread,0,CLR_NONE))

 

拝啓、ご質問は次のような内容です。

EAのコードでカスタムインジケータの 平均化を行うか、新しいインジケータで別途出力するかは、どこで行うのがベストでしょうか?

テスターでカスタムインジケーターを使用すると、テストの速度が著しく低下するため、質問させていただきました。

 
インジケータが呼ばれるほど、遅くなる。実行速度が 最適化されていないインジケーターの場合、テスターは1つで十分です )))
 
MaximuS60:

しゃい

しかし、ここで理解したように

if (zeroprice>Ask)

if (zeroprice<Bid)

は、買いが現在の価格より高いか低いかをチェックします。

これはEAではなく、スクリプトです。

問題は、ここで変数を追加できるかどうかです: if (OrderModify(OrderTicket(),0,OrderStopLoss(),zeroprice+Spread,0,CLR_NONE))

取引関数 OrderModify()の書き方のルールは、ドキュメントをご覧ください!

OrderModify(OrderTicket(),OrderOpenPrice(), OrderStopLoss(),zeroprice+Spread,0,Blue); //ポジションがマイナスの場合、買いのテイクイン/セット

OrderModify(OrderTicket(),OrderOpenPrice(), OrderStopLoss(),zeroprice-Spread,0,Red); //ポジションがマイナスなら売りのテイクオン/オフの設定

OrderModify(OrderTicket(),OrderOpenPrice(),zeroprice+Spread,OrderTakeProfit(),0,Blue); //ポジションがプラス側にある場合はストップロスをブール値で設定する

OrderModify(OrderTicket(),OrderOpenPrice(),zeroprice-Spread,OrderTakeProfit(),0,Red); //ポジションがプラス側にある場合、売りのストップロスをb/yで設定する。

試してみよう、ロジックを確認しようエラーログで確認しよう勉強頑張ってください。