[警告は閉鎖されました!】フォーラムを乱雑にしないために、どんな初心者の質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしでは、どこにも行けない。 - ページ 102

 
ループ内の変数の開始値と終了値を同時に変更することに興味があったのですが、今はすべてを開始値と終了値の変種数に変換してスイッチでパースしなければならないようです。全然ダメです。
 
例えば、利用可能資金の10%で開設する場合のロットサイズの計算方法を教えてください。
 
MikeZTN >> :
利用可能な資金の10%で開設する場合のロットサイズの計算方法を教えてください。

はこちら:「My First Grail

 

皆さん、おはようございます。教えてください。

私のEAで以下のようにした場合。

High_=High[ Highest("EURCHF_FX",PERIOD_M15,MODE_HIGH, Cbar,0)];
Low_=Low[ Lowest("EURCHF_FX",PERIOD_M15,MODE_LOW, Cbar,0)]; 

Ask_ = MarketInfo("EURCHF_FX" ,MODE_ASK);
Bid_ = MarketInfo("EURCHF_FX",MODE_BID);
Point_ = MarketInfo("EURCHF_FX",MODE_POINT);  
 
АТР = iATR("EURCHF_FX",PERIOD_M15, Per_ATR,0);
OpenTime = iTime("EURCHF_FX",PERIOD_M15,0);


その後、コード全体の中で絶対にビット、アスク、シンボル、タイムフレームを上記のように置き換えた。

EAはtf=m15で動作している(=動作するように設計されている)ので、m15からのデータしか取りません。

この時間軸で最適化しました。

このEAは、同じ履歴で再生し、別の時間枠でTESTを行い、m15のときと同じ結果になるようにすればよいのでしょうか?

//---------------------------------

私の知る限りでは、そのはずです。なぜなら、すべてのティックで動作し、m15からしかデータを取らないからです。

しかし、ここでは、その結果が腑に落ちない...。

 
Rita писал(а)>>

double High[] を次のように置き換えます。
doubleiHigh( 文字列シンボル,int timeframe,int shift)
и
double Low[] で置き換える。
doubleiLow() 文字列シンボル,int timeframe,int shift)
指定期間PERIOD_M15
ヘルプを読む
Highestは古い関数です!現在は(
intiHigheststring symbol, int timeframe, int type, int count=WHOLE_ARRAY, int start=0)
となっています。
 

なるほど。交換する私の持っている方法では有効ですが。

しかし、私の質問に対する答えはどうでしょうか?

 
Rita писал(а)>>

このEAは、他のTFのテスターで動かしても、m15で動かしたのと同じ結果を同じストーリーで示すはずですか?

High[]とLow[]を設定すれば、そうならないはずです(しかし、私は試していません。もしかしたら、あなたが先駆者となって、後で何が起きているのか教えてくれるかもしれません!)。

現在のチャートの各バーの最大価格を含む時系列の配列。

 
vvavva >> :
double High[] を次のように置き換えます。
doubleiHigh(文字列シンボル,int timeframe,int shift)
и
double Low[] で置き換える。
doubleiLow()文字列シンボル,int timeframe,int shift)
指定期間PERIOD_M15
ヘルプを読む
Highestは古い関数です!現在は(
intiHigheststring symbol, int timeframe, int type, int count=WHOLE_ARRAY, int start=0)
となっています。

おはこんばんちは

しゃかしゃか

High_=High[ Highest("EURCHF_FX",PERIOD_M15,MODE_HIGH, Cbar,0)];
Low_=Low[ Lowest("EURCHF_FX",PERIOD_M15,MODE_LOW, Cbar,0)]; 

私のEAでは、それらをやり直す

のように?

High_= iHigh(...............);
Low_=  iLow(................); 



 
Rita >> :

私のEAで廃止された機能を上記のように変更するにはどうしたらよいか、(できる人)教えてください。

ヘルプ:MQL4のさらなる開発の過程で、システム化のためにいくつかの関数の名前が変更され、あるグループから別のグループに移動 されました。旧機能名はハイライト表示されず、MetaEditorのヘルプとは関係ありません。コンパイラが正しく理解できるように、古い関数名を使用することができます。ただし、新しい名称を使用することを強く推奨します。

名前を変えた以外は何も変わらず、前に "i "を付けただけで、あとは変更なしです。

最高(...)>>iHighest(...)

 
granit77 >> :

前に "i "をつけるだけで、他は何も変わりません。

最高(...)>>iHighest(...)

ありがとうございます。うまくいった。

まだ理解できていない。

m5でEAを動かしても同じ結果になるのはなぜ?

Hbid_= High[iHighest("EURUSD_FX",PERIOD_M5,MODE_HIGH, Cbar,0)];
Lbid_= Low [iLowest("EURUSD_FX",PERIOD_M5,MODE_LOW, Cbar,0)]; 

同じパラメータと同じ履歴を使ってm15でテストすると、結果が違うのです

iTime("EURCHF_FX",PERIOD_M5,0) は絶対にm5用にカスタマイズされているからです!

なぜテストが違うのですか?

また、それらを維持するためにはどうしたらよいのでしょうか?