MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 1447

 
Aleksandr Egorov:

それが、ベースとなるものだから、聞きたかったんです。

フォーラムを検索してみた - これだけは代用できるhttps://www.mql5.com/ru/forum/157690#comment_3807848

Alexey Viktorov  2015.12.07 18:35        RU
Сделай шаблон с именем советника, чтобы на графике был индикатор с нужными настройками и будет тебе счастье.
как отобразить индикатор вызванный из эксперта?
как отобразить индикатор вызванный из эксперта?
  • 2015.12.07
  • www.mql5.com
Здравствуйте, написал пользовательский индикатор для МТ4. При вызове его из эксперта он не отображается на графике...
 
SanAlex:

フォーラムを検索してみた - これだけは代用できるhttps://www.mql5.com/ru/forum/157690#comment_3807848

本当にテスターに必要なものなのか?

 
Alexey Viktorov:

本当にテスターに必要なのか?

なぜテスターなのか、インジケーターを取り付ける専門家に聞いてみた

\\\\\\\\\\\\\\\\\\

Aleksandr Egorov 2021.04.15 17:28 #14457       RU
как вызвать индикатор из советника что бы при набрасывании советника на график в нижней части графика появлялся индикатор 
 
別ウィンドウのインジケータにパネルを作ったのですが、EAを描画した後にインジケータを描画しないと全部表示されないので、EAから描画するときにインジケータを呼び出して欲しいです パネル
 
SanAlex:

なぜテスターなのか、インジケーターを取り付ける専門家に聞いてみた

\\\\\\\\\\\\\\\\\\

でも、いただいたリンクはテスター用のEAです。テスターで EAを可視化して 起動すると、EA名のテンプレートがロードされ、そのようなテンプレートがない場合は「tester.tpl」という名前でロードされ、そのようなテンプレートもない場合はデフォルトテンプレートがロードされます。

 
Aleksandr Egorov:
別ウィンドウでインジケータを作成しました。 EA作成時にインジケータを作成し、全て表示されるようにしました。 EAからEAを作成する際にインジケータを呼び出すようにしたいです

簡単にはいかない、テンプレートを保存する

 
Alexey Viktorov:

でも、いただいたリンクはテスターのためのヒントです。可視化テスターで EAを起動すると、EA名でテンプレートを読み込みます。もしテンプレートがなければ、「tester.tpl」という名前で読み込みます。もしテンプレートもなければ、デフォルトのテンプレートを読み込みます。

出力されるのは、テンプレートだけです。

\\\\\\\\\\\\\\\\\\\\\\

以下は、質問と回答です。

ChartIndicatorAdd 2

 
SanAlex:

テンプレートを保存しておくと楽なのでは

で、EAからテンプレートを呼び出す?

 
Aleksandr Egorov:

で、EAからテンプレートを呼び出す?

アドバイザーに電話することも可能ですが、なぜですか?

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

以下は関数です。

//+------------------------------------------------------------------+
//|                                           ChartApplyTemplate.mq4 |
//|                        Copyright 2021, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2021, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
#property script_show_inputs
input string   Template                     = "ADX";             // Имя шаблона(without '.tpl')

ENUM_TIMEFRAMES TimeFrame;                   // Change TimeFrame - Current = dont changed
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   long currChart,prevChart=ChartFirst();
   int i=0,limit=100;
   bool errTemplate;
   while(i<limit)
     {
      currChart=ChartNext(prevChart);
      if(TimeFrame!=PERIOD_CURRENT)
        {
         ChartSetSymbolPeriod(prevChart,ChartSymbol(prevChart),TimeFrame);
        }
      errTemplate=ChartApplyTemplate(prevChart,Template+".tpl");
      if(!errTemplate)
        {
         Print("Error ",ChartSymbol(prevChart),"-> ",GetLastError());
        }
      if(currChart<0)
         break;
      Print(i,ChartSymbol(currChart)," ID =",currChart);
      prevChart=currChart;
      i++;
     }
  }
//+------------------------------------------------------------------+
 
SanAlex:

何が違うのか。パターン以外の出口はない。

そうですか、ありがとうございます・・・少なくとも私は6年前の自分を見ました・・・今のあなたのような感じでした。間違った方法でアドバイスをすることは考えませんでした。

テンプレートについて:テンプレートにインジケータがあり、EAがない場合、テンプレートはEAなしで読み込まれます...テンプレートにEAがある場合は?テンプレートで読み込んだEAがテンプレートを適用 しないため、ループして端末がハングアップするのは間違いないでしょうか?