[アーカイブ!】どんなルーキーの質問でも、フォーラムを散らかさないように。プロフェッショナルの皆さん、通り過ぎないでください。あなたなしではどこにも行けない - 2. - ページ 239 1...232233234235236237238239240241242243244245246...537 新しいコメント charter 2011.03.12 21:41 #2381 IgorM:iHighestとiLowestを参考に、ZZを構築するためのアルゴリズムを読み解くSZY:ない最も簡単なタスクは、コードが小さくなりますが、アルゴリズムは複雑で、私はコードを見つけることができないが、私はそうでピークを検索している高:高[iHighest(NULL、0、MODE_HIGH、i)の 1.33 "とは? 2.High[iHighest(NULL,0,MODE_HIGH,i)で1点です。2枚目を手に入れるには? iLowest !=第2点。 Igor Makanu 2011.03.12 21:45 #2382 charter:1.33 "とは?2.High[iHighest(NULL,0,MODE_HIGH,i)で1点です。2枚目を手に入れるには? 1.ジグザグに 2. そうではなく、上のラインと なる高値を 見つける可能性があるだけで、その中から 2 つの高値を選んでラインを引く必要があります。 Trachtorbek 2011.03.12 22:50 #2383 charter: 難しいのは、後に直線を引くことになる点を見つけることだ。 このポイントが見えていれば、線を引くことは難しくありません。プログラム的にどのように「見る」のか? ありがとうございます!修正しました。 Trachtorbek 2011.03.12 22:50 #2384 charter: 難しいのは、後に直線を引くことになる点を見つけることだ。 このポイントが見えていれば、線を引くことは難しくありません。プログラム的にどのように「見る」のか? ありがとうございます!修正しました。 削除済み 2011.03.12 23:01 #2385 目利きの皆さん、ごきげんよう。 Expert Advisorhttps://www.mql5.com/ru/code- Ilanのコードを修正するために私を助けてください。 EAには株式ドローダウンの調整可能なパラメーターがあり、すべての注文をクローズするというものです しかし、ロック機能が後から登場したため、当EAではトレンドに従ってすべての建玉を決済し、ロックポジションはそのままにしています。では、与えられたエクイティのドローダウンですべての注文がクローズされるように修正するにはどうすればよいのでしょうか。 ここでは、注文をクローズする部分です(トレンド注文と損切り注文はマジックナンバーが異なります)。ここではすべてがうまくいく。Expert Advisorはすべての注文をクローズしています。ドローダウンが設定値の4倍以上、デポドレインまで。 if (UseEquityStop) { if (CurrentPairProfit < 0.0 && MathAbs(CurrentPairProfit) > TotalEquityRisk / 100.0 * AccountEquityHigh()) { CloseThisSymbolAll(MagicNumber); CloseThisSymbolAll(LMagN); PrintF("Closed All due to Stop Out"); NewOrdersPlaced = FALSE; 負け注文はカバーされているのに、現在の利益と資本を計算するときに考慮されていないことが判明しましたここでは、現在の利益を計算するセグメントを紹介します。 double CalculateProfit() { double ld_ret_0 = 0; for (cnt = OrdersTotal() - 1; cnt >= 0; cnt--) { OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES); if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber) continue; if (OrderSymbol() == Symbol()) if (OrderMagicNumber() == MagicNumber || OrderMagicNumber() == LMagN) if (OrderType() == OP_BUY || OrderType() == OP_SELL) ld_ret_0 += OrderProfit(); } return (ld_ret_0); そして、こちらがエクイティの計算をするセグメントです。 double AccountEquityHigh() { if ((CountTrades(MagicNumber) == 0) && (CountTrades(LMagN) == 0)) AccountEquityHighAmt = AccountEquity(); if (AccountEquityHighAmt < PrevEquity) AccountEquityHighAmt = PrevEquity; else AccountEquityHighAmt = AccountEquity(); PrevEquity = AccountEquity(); return (AccountEquityHighAmt); 追加した箇所を黒く塗りつぶしました。何を忘れたんだろう......?なぜうまくいかないのか? [Archive!] Any rookie question, コーディングのヘルプ コーディングの方法は? Artyom Trishkin 2011.03.13 05:30 #2386 polsvv: 目利きの皆さん、ごきげんよう。 Expert Advisorhttps://www.mql5.com/ru/code- Ilanのコードを修正するために私を助けてください。 EAには株式ドローダウンの調整可能なパラメーターがあり、すべての注文をクローズするというものです しかし、このロットポジションの機能は後から登場したものであり、当EAではトレンドに従ってすべての建玉を決済し、ロックポジションはそのままにしています。では、与えられたエクイティのドローダウンですべての注文がクローズされるように修正するにはどうすればよいのでしょうか。 ここでは、注文をクローズする部分です(トレンド注文と損切り注文はマジックナンバーが異なります)。ここではすべてがうまくいく。Expert Advisorはすべての注文をクローズしています。ドローダウンが設定値の4倍以上、デポドレインまで。 if (UseEquityStop) { if (CurrentPairProfit < 0.0 && MathAbs(CurrentPairProfit) > TotalEquityRisk / 100.0 * AccountEquityHigh()) { CloseThisSymbolAll(MagicNumber); CloseThisSymbolAll(LMagN); PrintF("Closed All due to Stop Out"); NewOrdersPlaced = FALSE; 負け注文はカバーされているのに、現在の利益と資本を計算するときに考慮されていないことが判明しましたここでは、現在の利益を計算するセグメントを紹介します。 double CalculateProfit() { double ld_ret_0 = 0; for (cnt = OrdersTotal() - 1; cnt >= 0; cnt--) { OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES); if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber) continue; if (OrderSymbol() == Symbol()) if (OrderMagicNumber() == MagicNumber || OrderMagicNumber() == LMagN) if (OrderType() == OP_BUY || OrderType() == OP_SELL) ld_ret_0 += OrderProfit(); } return (ld_ret_0); そして、こちらがエクイティの計算をするセグメントです。 double AccountEquityHigh() { if ((CountTrades(MagicNumber) == 0) && (CountTrades(LMagN) == 0)) AccountEquityHighAmt = AccountEquity(); if (AccountEquityHighAmt < PrevEquity) AccountEquityHighAmt = PrevEquity; else AccountEquityHighAmt = AccountEquity(); PrevEquity = AccountEquity(); return (AccountEquityHighAmt); 追加した箇所を黒く塗りつぶしました。何を忘れたんだろう......?なぜ動かないのか? そうすべきなのかもしれませんね。: //=================================================================================== double CalculateProfit() { double ld_ret_0 = 0; for (int cnt = 0; cnt < OrdersTotal(); cnt++) { if (OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES)) { if (OrderSymbol()!=Symbol()) continue; if (OrderType()>1) continue; if (OrderMagicNumber()==MagicNumber || OrderMagicNumber() == LMagN) ld_ret_0 += OrderProfit(); } else if (!OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES)) { Print ("Func: CalculateProfit(), Select Order Error = ", GetLastError()); break; } } return (ld_ret_0); } //=================================================================================== Roma 2011.03.13 09:00 #2387 artmedia70:もしかしたら、それが本来の姿なのかも? このように、読み取れるようにコードを挿入 します。 Artyom Trishkin 2011.03.13 12:19 #2388 eddy: というように、コードを入れることで読めるようになるのです。 そうなんですか?それだけの違いがあったのでしょうか? 削除済み 2011.03.13 13:39 #2389 皆さんこんにちは! ちょうどこの週末に、初めてストラテジーテスターを使って います。最適化」機能の使い道がわからない。最適化できるパラメーターを変えて選択したが、バランスは変わらない。本質的に何をどのように最適化しようとしているのか?全く使っていない人はいるのでしょうか?:) BBC 2011.03.13 14:03 #2390 AndrejFX: みなさん、こんにちは。 ちょうどこの週末に初めてストラテジーテスターを使っています。最適化」機能の使い道がわからない。最適化できるパラメーターを変えて選択したが、バランスは変わらない。本質的に何をどのように最適化しようとしているのか?全く使っていない人はいるのでしょうか?:) 手始めにF1を使ってみてください。 ユーザーインターフェース」→「テスター」を検索します。 たぶん https://www.mql5.com/ru/articles/mt4/tester が役に立つでしょう 1...232233234235236237238239240241242243244245246...537 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
iHighestとiLowestを参考に、ZZを構築するためのアルゴリズムを読み解く
SZY:ない最も簡単なタスクは、コードが小さくなりますが、アルゴリズムは複雑で、私はコードを見つけることができないが、私はそうでピークを検索している高:高[iHighest(NULL、0、MODE_HIGH、i)の
1.33 "とは?
2.High[iHighest(NULL,0,MODE_HIGH,i)で1点です。2枚目を手に入れるには?
iLowest !=第2点。
1.33 "とは?
2.High[iHighest(NULL,0,MODE_HIGH,i)で1点です。2枚目を手に入れるには?
1.ジグザグに
2. そうではなく、上のラインと なる高値を 見つける可能性があるだけで、その中から 2 つの高値を選んでラインを引く必要があります。
難しいのは、後に直線を引くことになる点を見つけることだ。
このポイントが見えていれば、線を引くことは難しくありません。プログラム的にどのように「見る」のか?
ありがとうございます!修正しました。
難しいのは、後に直線を引くことになる点を見つけることだ。
このポイントが見えていれば、線を引くことは難しくありません。プログラム的にどのように「見る」のか?
ありがとうございます!修正しました。
目利きの皆さん、ごきげんよう。
Expert Advisorhttps://www.mql5.com/ru/code- Ilanのコードを修正するために私を助けてください。
EAには株式ドローダウンの調整可能なパラメーターがあり、すべての注文をクローズするというものです
しかし、ロック機能が後から登場したため、当EAではトレンドに従ってすべての建玉を決済し、ロックポジションはそのままにしています。では、与えられたエクイティのドローダウンですべての注文がクローズされるように修正するにはどうすればよいのでしょうか。
ここでは、注文をクローズする部分です(トレンド注文と損切り注文はマジックナンバーが異なります)。ここではすべてがうまくいく。Expert Advisorはすべての注文をクローズしています。ドローダウンが設定値の4倍以上、デポドレインまで。
if (UseEquityStop) {
if (CurrentPairProfit < 0.0 && MathAbs(CurrentPairProfit) > TotalEquityRisk / 100.0 * AccountEquityHigh()) {
CloseThisSymbolAll(MagicNumber);
CloseThisSymbolAll(LMagN);
PrintF("Closed All due to Stop Out");
NewOrdersPlaced = FALSE;
負け注文はカバーされているのに、現在の利益と資本を計算するときに考慮されていないことが判明しましたここでは、現在の利益を計算するセグメントを紹介します。
double CalculateProfit() {
double ld_ret_0 = 0;
for (cnt = OrdersTotal() - 1; cnt >= 0; cnt--) {
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber) continue;
if (OrderSymbol() == Symbol())
if (OrderMagicNumber() == MagicNumber || OrderMagicNumber() == LMagN)
if (OrderType() == OP_BUY || OrderType() == OP_SELL) ld_ret_0 += OrderProfit();
}
return (ld_ret_0);
そして、こちらがエクイティの計算をするセグメントです。
double AccountEquityHigh() {
if ((CountTrades(MagicNumber) == 0) && (CountTrades(LMagN) == 0)) AccountEquityHighAmt = AccountEquity();
if (AccountEquityHighAmt < PrevEquity) AccountEquityHighAmt = PrevEquity;
else AccountEquityHighAmt = AccountEquity();
PrevEquity = AccountEquity();
return (AccountEquityHighAmt);
追加した箇所を黒く塗りつぶしました。何を忘れたんだろう......?なぜうまくいかないのか?
目利きの皆さん、ごきげんよう。
Expert Advisorhttps://www.mql5.com/ru/code- Ilanのコードを修正するために私を助けてください。
EAには株式ドローダウンの調整可能なパラメーターがあり、すべての注文をクローズするというものです
しかし、このロットポジションの機能は後から登場したものであり、当EAではトレンドに従ってすべての建玉を決済し、ロックポジションはそのままにしています。では、与えられたエクイティのドローダウンですべての注文がクローズされるように修正するにはどうすればよいのでしょうか。
ここでは、注文をクローズする部分です(トレンド注文と損切り注文はマジックナンバーが異なります)。ここではすべてがうまくいく。Expert Advisorはすべての注文をクローズしています。ドローダウンが設定値の4倍以上、デポドレインまで。
if (UseEquityStop) {
if (CurrentPairProfit < 0.0 && MathAbs(CurrentPairProfit) > TotalEquityRisk / 100.0 * AccountEquityHigh()) {
CloseThisSymbolAll(MagicNumber);
CloseThisSymbolAll(LMagN);
PrintF("Closed All due to Stop Out");
NewOrdersPlaced = FALSE;
負け注文はカバーされているのに、現在の利益と資本を計算するときに考慮されていないことが判明しましたここでは、現在の利益を計算するセグメントを紹介します。
double CalculateProfit() {
double ld_ret_0 = 0;
for (cnt = OrdersTotal() - 1; cnt >= 0; cnt--) {
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber) continue;
if (OrderSymbol() == Symbol())
if (OrderMagicNumber() == MagicNumber || OrderMagicNumber() == LMagN)
if (OrderType() == OP_BUY || OrderType() == OP_SELL) ld_ret_0 += OrderProfit();
}
return (ld_ret_0);
そして、こちらがエクイティの計算をするセグメントです。
double AccountEquityHigh() {
if ((CountTrades(MagicNumber) == 0) && (CountTrades(LMagN) == 0)) AccountEquityHighAmt = AccountEquity();
if (AccountEquityHighAmt < PrevEquity) AccountEquityHighAmt = PrevEquity;
else AccountEquityHighAmt = AccountEquity();
PrevEquity = AccountEquity();
return (AccountEquityHighAmt);
追加した箇所を黒く塗りつぶしました。何を忘れたんだろう......?なぜ動かないのか?
そうすべきなのかもしれませんね。:
もしかしたら、それが本来の姿なのかも?
というように、コードを入れることで読めるようになるのです。
ちょうどこの週末に、初めてストラテジーテスターを使って います。最適化」機能の使い道がわからない。最適化できるパラメーターを変えて選択したが、バランスは変わらない。本質的に何をどのように最適化しようとしているのか?全く使っていない人はいるのでしょうか?:)
みなさん、こんにちは。
ちょうどこの週末に初めてストラテジーテスターを使っています。最適化」機能の使い道がわからない。最適化できるパラメーターを変えて選択したが、バランスは変わらない。本質的に何をどのように最適化しようとしているのか?全く使っていない人はいるのでしょうか?:)
手始めにF1を使ってみてください。
ユーザーインターフェース」→「テスター」を検索します。
たぶん https://www.mql5.com/ru/articles/mt4/tester が役に立つでしょう