エラー、バグ、質問 - ページ 732

 

ここで質問です。
MQL4では、このようなコードになっています。

for (i=0;i<limit;i++) 
{
  t=Time[i];
}
MQL5では正しいでしょうか。
datetime Time[];
ArraySetAsSeries(Time,true);
for (i=0;i<limit;i++) 
{
  CopyTime(_Symbol, _Period, 0, i+1, Time);   
  t=Time[i];
}

 
Vitya:

ここで質問です。
MQL4でのコードはこんな感じです。

MQL5では正しいでしょうか。

というのは、ちょっと違う。

ループの前に一度CopyTimeを呼び 出すことが望ましい。

Документация по MQL5: Доступ к таймсериям и индикаторам / CopyTime
Документация по MQL5: Доступ к таймсериям и индикаторам / CopyTime
  • www.mql5.com
Доступ к таймсериям и индикаторам / CopyTime - Документация по MQL5
 
sergeev:

というのは、ちょっと違う。

ループの前に一度CopyTimeを呼び 出すことが望ましい。

そうだろ?

  datetime Time[];
  ArraySetAsSeries(Time,true);
  CopyTime(_Symbol, _Period, 0, limit, Time);   

  for (i=0;i<limit;i++) 
  {
    t=Time[i];
  }
 

データウィンドウには、変数Volumeがあります。私の理解では、交換(実)量という意味です。今日気づいたのですが、EUR/USDのM1(Alpari)で、任意のバーにマウスカーソルを合わせると、出来高の値が表示されますね。この数値がどのように算出されているのか、ご存知の方はいらっしゃるでしょうか。これはアルパリの顧客だけのペアの取引量なのか、それとも全く乱数なのか、何なのか...。下のスクリーンショットでは、ボリューム=620mと表示されています。

 
Alex5757000:

データウィンドウには、変数Volumeがあります。私の理解では、交換(実)量という意味です。今日気づいたのですが、EUR/USDのM1(Alpari)で、任意のバーにマウスカーソルを合わせると、出来高の値が表示されますね。この数値がどのように算出されているのか、ご存知の方はいらっしゃるでしょうか。これはアルパリの顧客だけのペアの取引量なのか、それとも全く乱数なのか、何なのか...。下のスクリーンショットでは、ボリューム=620mと表示されています。

アルパリのお客様のみしかし、大手オフィスの内部ボリュームは相関が高い。
 

プログラム実行中の奇妙な不具合

int TimeToCycleIndex(datetime lTime, ENUM_TIMEFRAMES lTimeFrame, int lDays)

{

int Resx;

MqlDateTime Struc;

TimeToStruct(lTime,Struc);

Resx=(MarketDayCycle(lTime,lDays)*60*24+Struc.hour*60+Struc.min)/(PeriodSeconds(lTimeFrame)/60);

Print("Resx = ",Resx," ResCalc = ",(MarketDayCycle(lTime,lDays)*60*24+Struc.hour*60+Struc.min)/(PeriodSeconds(lTimeFrame) /60));

return(Resx)です。

}

比較のために同じことを何度か数えてみてください。ログの断片は以下の通りです。負の数にはなり得ないので、誤差は赤で表示されます。変数が壊れているような気がします。この問題は何に関するもので、どのように解決すればよいのでしょうか?よろしくお願いします。

勢揃い レンジ '-FreqTime03.mq5'です。
Resx=。 -2 ResCalc= 286
Resx=。 287 ResCalc= 287
Resx=。 0 ResCalc= 0 0
Resx=。 1 ResCalc= 1 1
Resx=。 2 ResCalc= 2 2
Resx=。 3 ResCalc= 3 3
Resx= 3 4 ResCalc= 4 4
Resx= 4 5 ResCalc= 5 5
Resx= 5 6 ResCalc= 6 6
Resx=。 7 ResCalc= 7 7
Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура даты
Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура даты
  • www.mql5.com
Стандартные константы, перечисления и структуры / Структуры данных / Структура даты - Документация по MQL5
 
Urain:
アルパリのお客様のみしかし、大きなオフィスの内部ボリュームは、非常に相関があるのです。
どこからの情報ですか?アルパリデュカスには仕入先があるようですが、どちらかというと仕入先の方が多いかも?
 

標準ライブラリには、グラフィカル・インターフェースを構築するためのクラスが用意されている。 これは良いことだと思う。

残念なのは、ダイアログに不具合があることです。 テストケースで確認できますが、ダブルクリックで「移動可能」な要素(スクロールバーやウィンドウタイトルバーなど)をキャプチャすると、画面上の任意の場所にドラッグすることが可能です。2つ目の不満は、ダイアログウィンドウを水平方向に移動すると、チャート上のチャートも一緒にスクロールしてしまうことです。 移動の目的がダイアログの下のチャートを見るためであることが多いことを考えると、致命的ではありませんが不快です。 3つ目はコントロール(例:チェックボックス)の動作が不安定で、一般に軽いラグ(これはおそらく現在のターミナルの実装では修正できません)です。

また、アーキテクチャ上の不都合(例えば、静的なダイアログのアセンブル(要素の早期連結)にチューニングされたアーキテクチャ)もありますが、これはグルメな人向けの話です。原則的には、耐えられる。

また、実装にはプラスもあれば美点もありますが、これについてはこのスレッドでは論外です。

バグは修正可能です。

--

また、マルチページダイアログを実装するためのツール(CTabBoxなど)を標準装備してほしいです。

Документация по MQL5: Стандартная библиотека
Документация по MQL5: Стандартная библиотека
  • www.mql5.com
Стандартная библиотека - Документация по MQL5
 
gal:

プログラム実行中の奇妙な不具合

int TimeToCycleIndex(datetime lTime, ENUM_TIMEFRAMES lTimeFrame, int lDays)

{

int Resx;

MqlDateTime Struc;

TimeToStruct(lTime,Struc);

Resx=(MarketDayCycle(lTime,lDays)*60*24+Struc.hour*60+Struc.min)/(PeriodSeconds(lTimeFrame)/60);

Print("Resx = ",Resx," ResCalc = ",(MarketDayCycle(lTime,lDays)*60*24+Struc.hour*60+Struc.min)/(PeriodSeconds(lTimeFrame) /60));

return(Resx)です。

}

比較のために同じことを何度か数えてみてください。ログの断片は以下の通りです。負の数にはなり得ないので、誤差は赤で表示されます。変数が壊れているような気がします。この問題は何に関するもので、どのように解決すればよいのでしょうか?よろしくお願いします。

1.コードを正しく貼り付けてください。

2.完全なソースコード、動作例、またはMarketDayCycle関数のコードを教えてください。

このコードには配列がなく、配列を操作する方法がありません。

 

新しいビルド642をインストールすると、EAテスト終了後にTesting Finishedのサウンドが鳴らない。

は、バグなのか、それとも.not a bug ?