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

 
igrok333:
は、askがまだ古い時に以前の価格を取り、 、その後refreshratesだけがaskを変更しましたよね?

コード実行ロジックは線形である - コマンドが実行され、変更が加えられ、次のコマンドが実行される。

あなたのコードでも同じで、代入を行い、価格の更新はすでにコードの下にあるのですね。

ループの中でセナ計算を行い、計算前に相場を更新する。は、計算であれば、セナを正規化することを忘れないでください。そうしないと、次の質問は、なぜ今動かないのかということになります)))

 
Igor Makanu:

コード実行ロジックは線形である - コマンドが実行され、変更が加えられ、次のコマンドが実行される。

あなたのコードでも同じで、代入を行い、価格の更新はすでにコードの下にあるのですね。

ループの中でセナ計算を行い、計算前に相場を更新する。は、計算であれば、セナを正規化することを忘れないでください。そうしないと、次の質問は、なぜ今動かないのかということになります)))




、確認方法がわかりました。
double cena=Ask;

for (int i=0; i<=10; i++)
   {
   RefreshRates();   
   Alert(cena);
   Sleep(3000);
   }



for (int i=0; i<=10; i++)
   {   
   RefreshRates();   
   double cena=Ask;
   Alert(cena);
   Sleep(3000);
   }
 
こんにちは。標準ライブラリの 中にWinApiフォルダがあります。MQL5リファレンスが内容の説明と一緒に出てくると良いですね。とりあえず、テスターで順送り開始日のフィールドを読み書きする方法を提案していただけないでしょうか。あるいは、1/5のような新しいプロポーションを追加することもできるかもしれません。
 
Good Beer:
こんにちは。標準ライブラリの 中にWinApiフォルダがあります。MQL5 Referenceに内容の説明があると良いですね。とりあえず、テスターで順送り開始日のフィールドを読み書きする方法を提案していただけないでしょうか。あるいは、1/5のような新しいプロポーションを追加することもできるかもしれません。

mqlとは関係ありません。

https://docs.microsoft.com/en-us/windows/win32/apiindex/windows-api-list

頑張ってください。

Windows API index - Win32 apps
  • 2018.05.31
  • GrantMeStrength
  • docs.microsoft.com
A list of the reference content for the Windows API.
 
Good Beer:
テスターで転送開始日フィールドを読み書きする方法はないのでしょうか?

5でどうこうは言いません、4でそんな感じです。

extern datetime dtDateBegin   = D'2008.12.01';
extern datetime dtDateEnd     = D'2009.01.01';

#import "user32.dll"
   int SendMessageA(int hWnd, int Msg, int wParam, int lParam[]);
   int GetAncestor(int hWnd, int gaFlags);
   int GetDlgItem(int hDlg, int nIDDlgItem);
   int FindWindowExA(int hWndParent, int hWndChildAfter, string lpszClass, string lpszWindow);
#import

#define  DTM_SETSYSTEMTIME      0x1002

void start()
{
   int hTerminalWnd, hTesterWnd, hDateTimeBegin, rglSysTime[4];
   
// определяем системный дескриптор окна тестера
   
   hTerminalWnd = GetAncestor(WindowHandle(Symbol(), Period()) ,2);
   hTesterWnd = GetDlgItem(hTerminalWnd, 0xE81E);
   hTesterWnd = GetDlgItem(hTesterWnd, 0x53);
   hTesterWnd = GetDlgItem(hTesterWnd, 0x81BF);

// устанавливаем дату начала  оптимизации\тестирования

   hDateTimeBegin = FindWindowExA(hTesterWnd, GetDlgItem(hTesterWnd, 0x3FF), "SysDateTimePick32", "");
   ArrayInitialize(rglSysTime, 0);
   
   rglSysTime[0] = (TimeMonth(dtDateBegin) << 16) | TimeYear(dtDateBegin);
   rglSysTime[1] = (TimeDay(dtDateBegin)   << 16) | TimeDayOfWeek(dtDateBegin);
   
   SendMessageA(hDateTimeBegin, DTM_SETSYSTEMTIME, 0, rglSysTime);
}
 

なぜ、mql4チュートリアルにあるレディコードの例は、どれもコンパイルできないのですか?

何か書こうとして、OnTick関数が.mqh関数に切り替わるという事実に直面したのですが、この関数から他の.mqh関数が呼ばれ、コンパイラはそれを見ず、どうしたらいいのかわかりません。チュートリアルで使用されているレディコードをダウンロードしましたが、それすらも機能しません。私は私のプログラムはありませんいいえいいえはい5-7エラーが表示されますが、私はそこに多くの地獄ので、公式ライブラリからダウンロードを実行したことを恐れていた...60-80-90のエラー。Variables.mqhのみエラーなしでコンパイルされ、他はすべて明るく燃えています。この言語に関する実際の資料はどこにあるのでしょうか?このビデオチュートリアル、何年前のものですか? 効果はありません。書いてあるとおりにやれば結果が出るのです。

Документация по MQL5: Основы языка / Функции / Функции обработки событий
Документация по MQL5: Основы языка / Функции / Функции обработки событий
  • www.mql5.com
В языке MQL5 предусмотрена обработка некоторых предопределенных событий. Функции для обработки этих событий должны быть определены в программе MQL5: имя функции, тип возвращаемого значения, состав параметров (если они есть) и их типы должны строго соответствовать описанию функции-обработчика события. Именно по типу возвращаемого значения и по...
 
Denis Diakonov:

なぜ、mql4チュートリアルにあるレディコードの例は、どれもコンパイルできないのですか?

私は何かを書こうとして、OnTick関数が.mqh関数に切り替わるという事実に直面しましたが、他の.mqh関数がこの関数から呼ばれ、コンパイラはそれを見ず、どうしたらいいのかわかりません。チュートリアルで使用されているレディコードをダウンロードしましたが、それすらも機能しません。私は私のプログラムはノーノーノーはい5-7エラーが表示されますが、私は公式のライブラリからダウンロードした実行時に、多くの地獄があることを恐れていた...60-80-90のエラー。Variables.mqhのみエラーなしでコンパイルされ、他はすべて明るく燃えています。この言語に関する実際の資料はどこにあるのでしょうか?ビデオチュートリアルばかりで、いつの時代のものなのか? うまくいかない、書いてある通り、やれば結果が出る。

正直なところ、意識の流れです :)

そして、具体的な内容もなし。

 
ログイン方法
 
Artyom Trishkin:

正直に言うと、意識の流れです :)

そして、具体的な内容もなし。

他のスレッドからのコピーです。


アドバイスをお願いします。ユーザー定義関数を別々の.mqhファイルに記述し、#includeを通して記述しています。 ある関数にstartが変更されると、プログラムは別の.mqhファイルを呼び出す必要があり(例えば、注文量の値を取得する)、うまくいきません。1枚のシートにすべてを書けばうまくいくし、注文開始パラメータに直接ロットを計算する式を書けばうまくいく。MQL4のレッスンに目を通したり、プログラムのドキュメントを読んだりしましたが、何も見つかりませんでした。ある.mqh関数が、計算の中で別の.mqh関数と相互作用できない理由がよくわからない。または、我々はそのような必要性に直面した場合、プログラムが開始するために返すようにする必要があります - それは開始するために結果を返すだろうし、この計算で開始すると、関数に戻り.mqh順序を開くのだろうか?これは何かゴミのような...。あるいは、既存の関数をすべて別の方法で宣言して、相互に作用するようにしたほうがいいのでは?感謝

 
Artyom Trishkin:

正直に言うと、意識の流れです :)

そして、具体的な内容もなし。

流れではなく、排水口です。