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

 

こんにちは。端末のデータウィンドウに、インジケータを使ってバータイムを「yyyyy.mm.dd」「hh:mi」の形式で表示させる方法です。

インジケータバッファは、1970年1月1日00:00からの秒単位の時間、または変換後の時間(TimeToStr)のいずれかを表示することができます。

または切り捨てられた日付または時刻。アドバイスが必要です。よろしくお願いします。

 

このとき、#property strict を追加すると、日付の出力が無変換でも "yyyyy.mm.dd hh:mm:ss" 形式になります。

またはTimeToString(TimeCurrent(),TIME_DATE|TIME_SECONDS)

 

トゥイエヴリヴ

そんな簡単なものではなさそうだ。それとも、何か私が理解していないことがあるのだろうか?

バージョンとしては、double型なので、ドッグはインジケーターバッファに埋もれて しまいます。

//+------------------------------------------------------------------+
//|                                                   WinData_v1.mq4 |
//|                        Copyright 2014, MetaQuotes Software Corp. |
//|                                              https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2014, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
#property indicator_chart_window
#property indicator_buffers 2

string g_DataTimeValue;

double WinDataBuffer[];
double WinNumberBarBuffer[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- indicator buffers mapping
   IndicatorDigits(0);//(8)

   SetIndexBuffer(0,WinDataBuffer);
   SetIndexStyle(0,DRAW_NONE);

   SetIndexBuffer(1,WinNumberBarBuffer);
   SetIndexStyle(1,DRAW_NONE);

   SetIndexLabel(0,"WinDataTime");
   SetIndexLabel(1,"№ Bara");

//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
//---
   for(int i=0; i<100; i++)
     {

      g_DataTimeValue=TimeToString(time[i],TIME_DATE|TIME_SECONDS);

      WinDataBuffer[i]=TimeToString(time[i],TIME_DATE|TIME_SECONDS);
      WinNumberBarBuffer[i]=i;
      // WinDataBuffer[i]=StrToDouble(g_DataTimeValue);

      Print(" WinDataBuffer[i] = ",WinDataBuffer[i],"  WinNumberBarBuffer[i] = ",WinNumberBarBuffer[i],
            "  g_DataTimeValue = ",g_DataTimeValue);

     }
//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+
Принт:


2014.08.11 15:39:54.016 WinData_v1 EURUSD,M1:  WinDataBuffer[i] = 2014.08  WinNumberBarBuffer[i] = 99.0  g_DataTimeValue = 2014.08.06 11:41:00



 

同志の皆さん、こんにちは。

この掲示板は初めてなので、古臭い質問だったら蹴らないでください・・・。

一定時間後(例えば1分ごと)にサイクルトレードを開始する方法は?

よろしくお願いします。
 
vld:

トゥイエヴリヴ

そんな簡単なものではなさそうだ。それとも、何か私が理解していないことがあるのだろうか?

バージョンとしては、double型なので、ドッグはインジケーターバッファに埋もれてしまいます。


なぜインジケーターバッファーに 文字列を入れるのですか?
 
Sanyo:

同志の皆さん、こんにちは。

この掲示板は初めてなので、古臭い質問だったら蹴らないでください・・・。

一定の時間間隔(例えば1分間隔)で取引を開始する方法は?

よろしくお願いします。

該当するTFの新しいバーの オープンを確認することで、!
 
Sanyo:

同志の皆さん、こんにちは。

この掲示板は初めてなので、古臭い質問だったら蹴らないでください・・・。

一定の時間間隔(例えば1分間隔)で取引を開始する方法は?

よろしくお願いします。
OnTimer()について読む
 

こんにちは、こんな質問があります。

MT4はエキスパートの最適化に大きな可能性を持っていますが、インジケーターを最適化するツールはないのでしょうか?あるインジケータのパラメータを最適 化して、その測定値が最大限「正しい」ようにしたい場合、それを行う唯一の方法は、そのインジケータを基にエクセルパートを書き、それをヒストリーで実行することだというのは本当でしょうか?

また、MT-4にはMT5のようなExpert Advisorの最適化のカスタム基準があるのか知りたいです。

 

みんな...忘れてた...

現在の注文の配列を取得し、それをループで処理する方法。そして、注文情報を得るためのループ。MT4、ありがとうございます・・・。

 
Vinin:

また、なぜインジケーターバッファに文字列を入れるのでしょうか?

この動作の不条理さは理解できるが、インジケーターの使い方がわからない

端末データウィンドウに バータイムを "yyyyy.mm.dd" と "hh:mi" の形式で表示する(端末データウィンドウの1行目と2行目として)。

インジケータバッファに time[i]を代入すると、1970年1月1日00:00からの秒単位の時刻が出力されるかのどちらかになります。

または変換後(TimeToString)切り捨てられた日付または時刻。

また、MQLのカスタムツールを使って表示できる可能性があれば、その方法をアドバイスしてください。 よろしくお願いします。