Я извиняюсь, но тему я начал с того что в советнике на тесте данные не те, потому стал проверять что там и где, в итоге оказывается что неверные данные в тестере хоть в индикаторе хоть в советнике. Это я проверял и на своем коде и на готовых индикаторах поставленных на эксперта в режиме тестирования, НО увы результат - только с одного ТФ. iCustom() - Это первое что я применял, потом перебрал почти все из справки, резутьтат тот же!
//+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ int init() {return(0);}
//+------------------------------------------------------------------+ //| expert deinitialization function | //+------------------------------------------------------------------+ int deinit() {return(0); }
//+------------------------------------------------------------------+ //Работа по отдельной ТС //+------------------------------------------------------------------+ int start() { static int prevtime=0; if (Time[0]==prevtime) return(0); if (prevtime==0) { prevtime=Time[0]; return(0); } prevtime=Time[0];
switch (Period()) { case PERIOD_M1: myPrint(PERIOD_M1); case PERIOD_M5: myPrint(PERIOD_M5); case PERIOD_M15: myPrint(PERIOD_M15); case PERIOD_M30: myPrint(PERIOD_M30); case PERIOD_H1: myPrint(PERIOD_H1); case PERIOD_H4: myPrint(PERIOD_H4); case PERIOD_D1: myPrint(PERIOD_D1); case PERIOD_W1: myPrint(PERIOD_W1); case PERIOD_MN1: myPrint(PERIOD_MN1); } return(0); }
string PeriodToStr(int TimeFrame){ switch (TimeFrame){ case PERIOD_M1 : return("M1"); case PERIOD_M5 : return("M5"); case PERIOD_M15: return("M15"); case PERIOD_M30: return("M30"); case PERIOD_H1 : return("H1"); case PERIOD_H4 : return("H4"); case PERIOD_D1 : return("D1"); case PERIOD_W1 : return("W1"); case PERIOD_MN1: return("MN1"); } }
Ваш код как есть запустил - работает НО данные по всем строкам одинаковые!!! Т.е. с одного ТФ! Минутку, у Вас все цыфиры по ТФ разные и меняются? Может что с моим МТ4, здесь вер-220. Пожалуйста проверьте на счет цыфир, а еще лучше смените вывод на[0][0]: "\n", " -----------1------ = ",arr1[0][1]," - ", arr1[0][1], Хотя разницы особо нет. Подставил Ваши блоки - меняются цыфиры только того ТФ на котором идет тест! Но всеравно спасибо.
Я извиняюсь, но тему я начал с того что в советнике на тесте данные не те, потому стал проверять что там и где,
в итоге оказывается что неверные данные в тестере хоть в индикаторе хоть в советнике.
Это я проверял и на своем коде и на готовых индикаторах поставленных на эксперта в режиме тестирования,
НО увы результат - только с одного ТФ.
iCustom() - Это первое что я применял, потом перебрал почти все из справки, резутьтат тот же!
コードを見せてください。また、インジケータを見たはずです
EAからインジケータを呼び出し、すべてが正しく動作することを確認します。荒らしはやめましょう、BANされますよ。
荒らしとは何ですか?状況を理解しようとすること。
もし私たちが間違っていたら、助けてください。
しかし、VictorのEAコードを使って、invertを呼び出し、ファイル内の何と連携しているかを見れば、結論は変わりません。
修正または禁止;)
//+------------------------------------------------------------------+
//| VininE_test |
//| Copyright © 2010, Victor Nicolaev |
//| e-mail: vinin@mail.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2010, Victor Nicolaev"
#property link "e-mail: vinin@mail.ru"
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init() {return(0);}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit() {return(0); }
//+------------------------------------------------------------------+
//Работа по отдельной ТС
//+------------------------------------------------------------------+
int start() {
static int prevtime=0;
if (Time[0]==prevtime) return(0);
if (prevtime==0) {
prevtime=Time[0];
return(0);
}
prevtime=Time[0];
switch (Period()) {
case PERIOD_M1: myPrint(PERIOD_M1);
case PERIOD_M5: myPrint(PERIOD_M5);
case PERIOD_M15: myPrint(PERIOD_M15);
case PERIOD_M30: myPrint(PERIOD_M30);
case PERIOD_H1: myPrint(PERIOD_H1);
case PERIOD_H4: myPrint(PERIOD_H4);
case PERIOD_D1: myPrint(PERIOD_D1);
case PERIOD_W1: myPrint(PERIOD_W1);
case PERIOD_MN1: myPrint(PERIOD_MN1);
}
return(0);
}
void myPrint(int TimeFrame){
Print(PeriodToStr(TimeFrame)+": ",
TimeToStr(iTime( NULL, TimeFrame, 0),TIME_DATE)," ",
TimeToStr(iTime( NULL, TimeFrame, 0),TIME_MINUTES), "; ",
iOpen( NULL, TimeFrame, 0), "; ",
iHigh( NULL, TimeFrame, 0), "; ",
iLow( NULL, TimeFrame, 0), "; ",
iClose(NULL, TimeFrame, 0),"; ",
iCustom(NULL,TimeFrame,"invert",0,0));
}
string PeriodToStr(int TimeFrame){
switch (TimeFrame){
case PERIOD_M1 : return("M1");
case PERIOD_M5 : return("M5");
case PERIOD_M15: return("M15");
case PERIOD_M30: return("M30");
case PERIOD_H1 : return("H1");
case PERIOD_H4 : return("H4");
case PERIOD_D1 : return("D1");
case PERIOD_W1 : return("W1");
case PERIOD_MN1: return("MN1");
}
}
При правильном подходе все работает нормально.そうですね~、確認します。
верно - подтверждаю
ビクターのログで月刊TFの配布数が0になってるの気づきましたか?
なぜ?
Вы заметили в логе Виктора, что месячный ТФ выдает 0?
Почему?
バーの本数が少ないと値が計算できない、そういう選択肢もあるのでしょう。
Количества баров не хватает для расчёта значений, полагаю такой вариант.を、オープナーなど、その時々の正しい情報で十分です。
何が荒らしなんだ?状況を理解しようとすること。
間違っていたら、助けてください。
しかし、VictorのEAコードを使って、invertを呼び出し、ファイル内の何を使って動作するかを見てみると、結論は変わりません。
修正または禁止;)
i+k*Period());チャートにインジケーターを表示させたか?
2、3行でいいんです
実際には、Period()^2という数値のバーを探しているのですが、履歴にはそれほど多くのバーがないかもしれません。
Ваш код как есть запустил - работает НО данные по всем строкам одинаковые!!! Т.е. с одного ТФ!
Минутку, у Вас все цыфиры по ТФ разные и меняются? Может что с моим МТ4, здесь вер-220.
Пожалуйста проверьте на счет цыфир, а еще лучше смените вывод на[0][0]:
"\n", " -----------1------ = ",arr1[0][1]," - ", arr1[0][1], Хотя разницы особо нет.
Подставил Ваши блоки - меняются цыфиры только того ТФ на котором идет тест!
Но всеравно спасибо.
慎重に変更する必要があります、すべてがその通りに変更されます。動作例を示しましたが、必要なものを変更してArrayCopyRatesを扱うと、他のタイムフレームだけでなく、他のシンボルからも値を取得できます。
Ты свой индикатор на график выкладывал?
そうですね。
分からない...何か変だ。もう一度やってみてくれ。歴史の不具合かな?
あるいは、ビルドが新しいか。
しかし、私のM1ゼロバーを最後に見たのは2010年2月04日でした。どうしようもないんです。
そうですね。
分からない...何か変だ。もう一度やってみてくれ。歴史の不具合かな?
あるいは、ビルドが新しいか。
しかし、私のM1ゼロバーを最後に見たのは2010年2月04日でした。どうしようもないんです。
何が欲しいのか言ってくれよ?