input group "Входные настройки Стохастик"
input bool Stoch = false; // Стохастик включен/выключен
input int in_StochK = 14; // период основной линии K
input int in_StochD = 3; // период первичного сглаживания D
input int in_StochSlow = 3; // период окончательного сглаживания
int OnInit() {
if ((Stoch = false) && ((StochK != 0) || (StochK != 0) || (StochSlow != 0)))
{
// Некая команда, которая говорит, что такой вариант даже не стоит пробовать оптимизировать
}
}
これをやってみたのですが、間違った最適化バリアントになってしまいます。
if ((Stoch = false) && ((StochK != 0) || (StochK != 0) || (StochSlow != 0)))
{
Print("Такой вариант тестирования не имеет смысла");
return(INIT_FAILED);
}
目標は、最適化時に4つの確率パラメータ(Stoch, in_StochK, int in_StochD, int in_StochSlow)のバリアントを列挙できるようにすることです。
こんにちは、ご返信ありがとうございます。 私の期待に応えるスクリプトを作ることができましたが、残念ながらまだ2つのエラーがあり、理解することも修正することもできません。 少し助けてもらうために誰に連絡すればいいかわかりますか? それはコンパイル後にエラーとして登録される2行のコードだけです...
フリーランスの仕事を作成し、応募してきた開発者から選ぶことができます。
https://www.mql5.com/fr/job
WebRequestでjsonを送信しようとすると、サーバーが"\u0022BTCUSDu0022 is not a valid bundle type for denormalisation. "と返します。
ヘッダーと StringToCharArrayですべてのエンコーディングの種類を指定してみましたが 、何も役に立ちませんでした。
pythonからは、すべて問題なく飛びます:
response = requests.post(url, data=json.dumps(data), headers=headers)
つまり、サーバーではすべてOKです。
問題を解決するには?
質問を少し言い換えます。OnInit ブロックでオプティマイザにコマンドを与えて、特定の条件下でテスト/最適化バリアントをスキップさせることは可能でしょうか。
これをやってみたのですが、間違った最適化バリアントになってしまいます。
目標は、最適化時に4つの確率パラメータ(Stoch, in_StochK, int in_StochD, int in_StochSlow)のバリアントを列挙できるようにすることです。
こんにちは。
おそらく
を
やあ、@taramortom。
おそらく
を
おそらく、オプティマイザーが正しく動作しない原因は、このコードの不正確さにあるのだろう:
おそらく、オプティマイザーが正しく動作しない原因は、このコードの不正確さにあるのだろう:
それが理由ではありません。動作ロジックの一例としてコードを作りました。フルバージョンのコードはサイズが大きすぎます。オプティマイザーを最適化する際、さまざまな組み合わせ(1つのオシレーターがオン、2つのオシレーターがオン、3つのオシレーターがオンなど)を試してもらいたいのです。
- このストッパーを使うと、オプティマイザーは、膨大な数のパスがあるはずなのに、少ないパス数で素早く作業を終えてしまいます。
- この制限を使わないと、オプティマイザはよりよく働きますが、たくさんの空の variant を生成します (上の例では、Stochastic がオフでもパラメータを検索します)。しかし、これは最適化のための余分な時間であり、有用なパスではなく空のパスです。
こんにちは!ExtJawsHandle=iMA(NULL,0,Period,0,Method,AppliedPrice)というMAに基づいたインジケータを書いています;
下の図のように、MAのレベルをプログラムで取得するにはどうすればよいでしょうか?
以下のような
IndicatorSetInteger(INDICATOR_LEVELS,1);
IndicatorSetDouble(INDICATOR_LEVELVALUE,0,10);
は機能しません。
IndicatorSetDouble(INDICATOR_LEVELVALUE,0,10);
は機能しない。
オプションはないのか?)