FrameFirst
フレーム読み込みのポインタを先頭に移動し、以前に設定したフィルタをリセットします。
bool FrameFirst(); |
戻り値
成功の場合は true、それ以外の場合は false 。エラー情報を取得するには、GetLastError() 関数が呼ばれます。
FrameFilter
フレーム読み込みフィルタを設定して、ポインタを先頭に移動します。
bool FrameFilter( |
戻り値
成功の場合は true、それ以外の場合は false 。エラー情報を取得するには、GetLastError() 関数が呼ばれます。
注意事項
最初のパラメータとして空の文字列が渡された場合、フィルタは数値パラメータでのみ機能し、指定された ID を持ったフレームのみが表示されます。2 番目のパラメータが ULONG_MAX の場合、テキストフィルタのみが機能します。
FrameFilter(“”, ULONG_MAX) の呼び出しは FrameFirst() と同一、つまりフィルタを使用しません。
FrameNext
フレームを読んでポインタを次に移動します。この関数には 2 つのバージョンがあります。
1. 1 つの数値を受け取る
bool FrameNext( |
2. フレームの全てのデータを受け取る
bool FrameNext( |
パラメータ
pass
[out] ストラテジーテスターーでの最適化のパスの数
name
[out] 識別子の名称
id
[out] 識別子の値
value
[out] 単一の数値
data
[out] 任意型の配列
戻り値
成功の場合は true、それ以外の場合は false 。エラー情報を取得するには、GetLastError() 関数が呼ばれます。
注意事項
2 番目のバージョンの呼び出しでは受信されたデータを data[] 配列で正しく処理する必要があります。
FrameInputs
指定されたパス番号を持つフレームを形成する入力パラメータを受け取ります。
bool FrameInputs( |
パラメータ
pass
[in] ストラテジーテスターーでの最適化のパスの数
parameters
[out] 名称ととパラメータ値の記述のための文字列の配列
parameters_count
[out] parameters[] 配列の要素数
戻り値
成功の場合は true、それ以外の場合は false 。エラー情報を取得するには、GetLastError() 関数が呼ばれます。
注意事項
parameters[] 配列の parameters_count で文字列の数を取得することによって、全てのレコードを通過するループを整理することが出来ます。これにより、エキスパートアドバイザーの指定されたパス数の入力パラメータの値を見つけられます。
FrameAdd
データとフレームを追加します。この関数には 2 つのバージョンがあります。
1. ファイルからのデータの追加
bool FrameAdd( |
2. 任意型の配列からのデータの追加
bool FrameAdd( |
パラメータ
name
[in] Public フレームラベル。FrameFilter() 関数のフィルタ内で利用出来ます。
id
[in] public フレーム識別子。FrameFilter() 関数のフィルタ内で利用出来ます。
value
[in] フレームに書き込む数値。OnTester() 関数でのように単一パスの結果を送信するために使用されます。
filename
[in] フレームに追加するデータを含むファイルの名称。このファイルは MQL5/Files に位置しなければなりません。
data
[in] フレームに書き込む任意の型の配列。参照で引き渡されます。
戻り値
成功の場合は true、それ以外の場合は false 。エラー情報を取得するには、GetLastError() 関数が呼ばれます。
ParameterGetRange
ストラテジーテスターでエキスパートアドバイザーを最適化する際に、値範囲のデータを受け取り入力変数のステップを変更します。この関数には 2 つのバージョンがあります。
1. 整数型入力パラメータのデータを受け取る
bool ParameterGetRange( |
2. real 型入力パラメータのデータを受け取る
bool ParameterGetRange( |
パラメータ
name
[in] 入力変数 ID。これらの変数は、アプリケーションの外部パラメータです。チャート起動中または単一のテスト中での指定が可能です。
enable
[out] このパラメータがストラテジーテスターで最適化の際に値を列挙するために使用することが出来るというフラグ
value
[out] パラメータ値
start
[out] 最適化中の初期のパラメータ値
step
[out] 値の列挙中のパラメータ変更ステップ
stop
[out] 最適化中の最終パラメータ値
戻り値
成功の場合は true、それ以外の場合は false 。エラー情報を取得するには、GetLastError() 関数が呼ばれます。
注意事項
この関数は OnTesterInit()、OnTesterPass() 及び OnTesterDeinit() ハンドラ—のみから呼び出されます。これは、エキスパートアドバイザーの入力パラメータ値を受信するために導入され、変動はストラテジーテスターで最適化中に範囲されています。
OnTesterInit()で呼び出された場合、取得されたデータは、任意の入力変数列挙のためのルールのParameterSetRange() 関数を使用しての再定義に使用することが出来ます。そのため、新たな Start、Stop 及び Step 値を設定することができ、ストラテジーテスターの設定にかかわらず、入力パラメータを完全に最適化から除外することも出来ます。なので、エキスパートアドバイザーの重要なパラメータの値に応じて最適化からいくつかのパラメータを除外することによって最適化の際に入力パラメータのエリアを管理することが出来ます。
例:
#property description “Expert Advisor for ParameterGetRange() function demonstration.” //+——————————————————————+ //— bool 型入力パラメータの例 |
ParameterSetRange
ストラテジーテスターでエキスパートアドバイザーを最適化する際に、入力変数値、チェンジステップ、最初と最終の値)の使い方を指定します。この関数には 2 つのバージョンがあります。
1. 整数型入力パラメータの値を指定する
bool ParameterSetRange( |
2. real 型入力パラメータの値を指定する
bool ParameterSetRange( |
パラメータ
name
[in] input または sinput 変数 ID。これらの変数は、アプリケーションの外部パラメータです。このパラメータの値はプログラム起動時に指定することが出来ます。
enable
[in] こストラテジーテスターで最適化の際に値を列挙するために使用ためにはこのパラメータを有効にします。
value
[in] パラメータ値
start
[in] 最適化中の初期のパラメータ値
step
[in] 値の列挙中のパラメータ変更ステップ
stop
[in] 最適化中の最終パラメータ値
戻り値
成功の場合は true、それ以外の場合は false 。エラー情報を取得するには、GetLastError() 関数が呼ばれます。
注意事項
この関数はストラテジーテスターから最適化を軌道する際に OnTesterInit() ハンドラからのみ呼ばれます。これは、パラメータの範囲及び変更のステップを指定するために設計されています。ストラテジーテスターの設定にかかわらず、パラメータは完全に最適化から除外することも出来ます。また、最適化プロセスにおけるsinput 修飾子で宣言された変数を使用も可能にします。
ParameterSetRange() 関数を使用すると、最適化から必要な入力パラメータを含むまたは除き、必要な範囲及び変更ステップを設定することにより、その主要なパラメータの値に応じてストラテジーテスターでエキスパートアドバイザーの最適化を管理することが出来ます。
Originally posted 2019-07-30 09:44:04.