2016.11.0116:56:07.466 период (EURUSD,H1) Period()=16385 2016.11.0116:55:58.840 период (EURUSD,M30) Period()=30 2016.11.0116:55:46.950 период (EURUSD,M1) Period()=1
2016.11.0116:56:07.466 период (EURUSD,H1) Period()=16385 2016.11.0116:55:58.840 период (EURUSD,M30) Period()=30 2016.11.0116:55:46.950 период (EURUSD,M1) Period()=1
この機能は、ウィンドウを一番上に表示します。しかし、一番上にウィンドウがあるかどうかはチェックしません
https://www.mql5.com/ru/forum/42833#comment_1493908
その場
ヘルプはまだ変わっていません、1年半は期限ではありません :))
https://www.mql5.com/ru/forum/42833#comment_1493908
ということは全くありません。グラフは一番上になくても、見えるようにすることができます。あるいは、一番上にあるのに見えないということもあります。
チャートへの描画は、見えるか見えないかがわかって初めて意味がある、あるいはない。
そんなことは全然ないんです。グラフは一番上になくても、見えるようにすることができます。または、一番上にあるのに見えない場合もあります。
見えるか見えないかがわかってこそ、チャートに描く意味があるのです。
そんなことは全然ないんです。グラフは一番上になくても、見えるようにすることができます。または、一番上にあるのに見えない場合もあります。
チャートへの描画は、見えるか見えないかがわかって初めて意味がある、あるいはない。
ここでは、チャートの座標と幅、そしてzオーダーを取得できます。チャートのすべてのウィンドウは同じWMIClientに属しています。
これを試してみてください。
WinApiがあなたの力になります。
そこでは、チャートの座標と幅、そしてzオーダーを取得できます。チャートのすべてのウィンドウは、同じWMIClientに属しています。
期間データを呼び出すのにスクリプトを使っています。時間単位の数字を始めとして、理解しがたい数字が並んでいます。それとも、そういうものなのでしょうか?
{
Print("Period()=",Period());
}
2016.11.01 16:55:58.840 период (EURUSD,M30) Period()=30
2016.11.01 16:55:46.950 период (EURUSD,M1) Period()=1
期間データを呼び出すのにスクリプトを使っています。時間単位の数字を始めとして、理解しがたい数字が並んでいます。それとも、そういうものなのでしょうか?
{
Print("Period()=",Period());
}
2016.11.01 16:55:58.840 период (EURUSD,M30) Period()=30
2016.11.01 16:55:46.950 период (EURUSD,M1) Period()=1
現在のインジケーターの流れの中で、フルラップのタイムを計測するのは正しいアプローチなのでしょうか?
#property indicator_buffers 0
#property indicator_plots 0
sinput int Amount = 100; // Количество циклов
void OnInit( void )
{
EventSetMillisecondTimer(1);
}
ulong ArrayMean( const ulong &Array[] )
{
const int Size = ArraySize(Array);
ulong Sum = 0;
for (int i = 0; i < Size; i++)
Sum += Array[i];
return((Size > 0) ? Sum / Size : 0);
}
ulong ArrayMin( const ulong &Array[] )
{
return(Array[ArrayMinimum(Array)]);
}
ulong ArrayMax( const ulong &Array[] )
{
return(Array[ArrayMaximum(Array)]);
}
#define TOSTRING(A) #A + " = " + (string)(Array##A(Cycles)) + " mcs. "
void CycleComment( void )
{
static ulong Cycles[];
static const int Size = ArrayResize(Cycles, Amount);
static ulong PrevTime = GetMicrosecondCount();
static int i = 0;
Cycles[i] = GetMicrosecondCount() - PrevTime;
i++;
i %= Size;
Comment(TOSTRING(Mean) + TOSTRING(Min) + TOSTRING(Max));
PrevTime = GetMicrosecondCount();
}
void OnTimer( void )
{
CycleComment();
}
int OnCalculate( const int rates_total, const int prev_calculated, const int begin, const double& price[] )
{
return(rates_total);
}
空のチャート(インジケータなし)で、平均15ms、最小5msの値を得ることができます。なぜ、そのようなことになるのでしょうか。