ゴゲッターEA - ページ 3 12345678910...15 新しいコメント smalltalk 2006.07.18 08:53 #21 このEAをフォワードテストしたことがありますか? 削除済み 2006.07.18 09:47 #22 ねえ 急いで作業するものを与えるために、私は明白な何かを見逃していました。次のようなコードの行を修正してください。 if(OrderSymbol()==Symbol()||OrderMagicNumber()==MagicNumber)) を if(OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber)のようになります。 すみません、見落としがありました。同じEA、同じMagicnumberで複数通貨を取引するようになると、混乱するんですね。 とにかく、あなたがうまくいっていることがうれしいです。お疲れ様でした、そしてあなたは全ての賞賛に値します。 削除済み 2006.07.18 12:53 #23 Maji: ちょっと。急いで作業するものを与えるために、私は明白な何かを見逃していました。次のようなコードの行を修正してください。 if(OrderSymbol()==Symbol()||OrderMagicNumber()==MagicNumber)) を if(OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber)のようになります。 すみません、見落としがありました。同じEA、同じMagicnumberで複数通貨を取引するようになると、混乱するんですね。 とにかく、あなたが元気でいてくれることがうれしいです。よくやった、あなたはすべての称賛に値します。 ということで、気になったのですが、そのままにしておきました...終わりよければすべてよし...修正完了です。 削除済み 2006.07.18 13:33 #24 GGlongsビルド1.05 これで良しとします。 複数注文のカウント方法の強化、複数注文の処理・修正等の問題点を指導してくれたMajiに改めて感謝します。 これは、新しいトレーリングストップ機能と新しいカウント機能を 全体に使用しています。 また、下に添付したグラフのサムネイルを作成したシグナル_2についても作業を行いました。これはメイントレンドシグナルです。カウンタートレンドのシグナル_1はまだ試していません。しかし、GBP/USD 5mチャートへの再展開のために、この設定でsignal_2は許容範囲です。 フォワードテストでは、前バージョンのGGlongsは今朝明確な買いシグナルを入力することができませんでした。v1.01のシグナルロジックを見直すと、自分が思っていた以上に、全てが混ざっていたことが分かりました。とにかく問題は解決しました。v1.01の時よりもv1.05の方がフォワードテストがうまくいくはずです。v1.05はv1.01よりもフォワードテストがしやすくなっているはずだ。 ファイル: gglongs_v1.05.htm 258 kb gglongs_v1.05.gif 7 kb gogetlongsv1.05.mq4 16 kb 削除済み 2006.07.18 14:31 #25 変更前のチャートでは、全く修正されていないことに気づきました...以前のように、最後のシリーズの跡に新しいシリーズが入るわけでもありません...なぜでしょう?私が行った変更でどうしてそうなるのだろう? 信号のロジックを間違えたからだとわかりました...謎は解けました。 ファイル: multipleordertiming.gif 55 kb 削除済み 2006.07.18 14:57 #26 困ったなあ......。 これは、GGlでうまく機能しているものです.... int ModifyTrades() { int trade; for(trade=OrdersTotal()-1;trade>=0;trade--) { OrderSelect(trade,SELECT_BY_POS,MODE_TRADES); if(OrderSymbol()!=Symbol()&&OrderMagicNumber()!=MagicNumber) continue; if(OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber) if(TrailingStopMode && TrailingStop > 0) { if(Bid - OrderOpenPrice() > Point * TrailingStop || OrderOpenPrice() - Bid >= 0) { if(OrderStopLoss() < Bid - Point * TrailingStop || OrderStopLoss() == 0) { OrderModify(OrderTicket(), OrderOpenPrice(), Bid - Point * TrailingStop, OrderTakeProfit(), 0, MediumSeaGreen); //etc. }//for } } } } [/PHP] so.... why doesn't this work in the GGs??? [PHP]int ModifyTrades() { int trade; for(trade=OrdersTotal()-1;trade>=0;trade--) { OrderSelect(trade,SELECT_BY_POS,MODE_TRADES); if(OrderSymbol()!=Symbol()&&OrderMagicNumber()!=MagicNumber) continue; if(OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber) if(TrailingStopMode && TrailingStop > 0) { if((OrderOpenPrice() - Ask) > (Point * TrailingStop || Ask - OrderOpenPrice() >= 0)) { if((OrderStopLoss() > (Ask + Point * TrailingStop)) || (OrderStopLoss() == 0)) { OrderModify(OrderTicket(), OrderOpenPrice(), Bid - Point * TrailingStop, OrderTakeProfit(), 0, MediumSeaGreen); //etc. }//for } } } } ...そういえば、どのGGsバージョンのレポートでも、トレーリングストップの変更アクティビティを見たことがありません!どうしたんだろう? ファイル: ggs2.21.htm 149 kb ggs2.21.gif 7 kb 出口戦略ステップ・ストップとトレーリング・ストップの比較 どんな新人の質問でも、フォーラムを乱雑にしないように。プロフェッショナルは、通り過ぎないでください。Nowhere without you - コーディングの方法は? 削除済み 2006.07.19 18:40 #27 次のコーディングの課題... EAのロジックにサポートとレジスタンスを追加したいのですが・・・。 これは、指定したバー 数の最高値を返すというもので、うまくいきます。 //support and resistance double HIGH = High; double LOW = Low[Lowest (NULL, 0, MODE_LOW, SupportBarsBack, LStartBack)]; GGに着目してみると。30mチャートで145本ごとに最高値があり、その後に3つの逆張りの売りシグナルがあることに気づきました。私は、カウンタートレンドの売りシグナルを、5EMAが150EMAの上にある18EMAを上から下へクロスするたびに発生するものと定義しています。つまり、新高値の後に売りシグナルが続くというパターンです。 さらに、新高値の後の最初の売りシグナルは、あまり生産的でないことがわかります。2回目のシグナルは一般的にもっと報われ、3回目などはより大きな動きが起こるところです。 それで... それぞれの状況に合わせたシグナルを生成できるようになったので、新高値または現在の145bar期間の最高値に関連して、これらの異なる発生時に実行するシグナルをカスタマイズしたいと思います。 シグナルをカスタマイズして処理することができます... 課題は、カウンタートレンドの売りシグナルを現在の145barの期間の最高値に関連して見つけることと、このシグナルがその期間の最高値からすでに何回発生したかをカウントすることです。 シグナルの発生回数をどう数えるのかがよくわかりません。チャート上でカウントすることはできますが、コードでカウントするのはどうすればいいのでしょうか? 削除済み 2006.07.19 19:02 #28 最高値が発生した移動 平均のクロスシグナルを取得した時点から、配列の何本前にあるかを判断するにはどうすればよいですか。 削除済み 2006.07.19 19:41 #29 OK 配列の最大値と最小値を取得する方法はわかりました...これで値が発生したバー番号がわかりますが、チャートのバー番号で表示されます... 移動 平均のクロスが発生したバーの番号を得ることができれば、その2つを引いて、シグナルの発生から何本後ろのサポートまたはレジスタンスであるかを確認することができます。 移動平均のクロス信号が発生したときのチャートのバーナンバーはどうすればわかるの? 削除済み 2006.07.19 21:30 #30 /support and resistance double HIGH = High; double LOW = Low[Lowest (NULL, 0, MODE_LOW, SupportBarsBack, LStartBack)]; //support and resistance location int Hloc = ArrayMaximum(High); int Lloc = ArrayMinimum(Low); . . . Print("Order Number: ",OrderTicket() ," ",ResistanceBarsBack," bars back resistance : ",HIGH," @bar",Hloc," & ",SupportBarsBack," bars back support : ",LOW," @bar",Lloc); [/PHP] this is what this code is giving me... [PHP]2006.07.19 15:27:54 2005.03.10 21:30 GoGetShorts-2.21x GBPUSD,M30: Order Number: 6 20 bars back resistance : 1.9284 @bar109 & 20 bars back support : 1.9204 @bar205 2006.07.19 15:27:54 2005.03.10 21:30 GoGetShorts-2.21x GBPUSD,M30: SELL order opened : 1.9223 2006.07.19 15:27:54 2005.03.10 21:30 GoGetShorts-2.21x GBPUSD,M30: open #6 sell 0.05 GBPUSD at 1.9223 sl: 1.9270 tp: 1.9118 ok 2006.07.19 15:27:54 2005.03.10 21:30 GoGetShorts-2.21x GBPUSD,M30: open #5 sell 0.05 GBPUSD at 1.9223 sl: 1.9270 tp: 1.9118 ok 2006.07.19 15:27:54 2005.03.07 15:30 GoGetShorts-2.21x GBPUSD,M30: Order Number: 4 20 bars back resistance : 1.9224 @bar44 & 20 bars back support : 1.9114 @bar49 2006.07.19 15:27:54 2005.03.07 15:30 GoGetShorts-2.21x GBPUSD,M30: SELL order opened : 1.9146 2006.07.19 15:27:54 2005.03.07 15:30 GoGetShorts-2.21x GBPUSD,M30: open #4 sell 0.05 GBPUSD at 1.9146 sl: 1.9193 tp: 1.9041 ok 2006.07.19 15:27:54 2005.03.07 15:30 GoGetShorts-2.21x GBPUSD,M30: open #3 sell 0.05 GBPUSD at 1.9146 sl: 1.9193 tp: 1.9041 ok 2006.07.19 15:27:54 2005.03.02 16:30 GoGetShorts-2.21x GBPUSD,M30: Order Number: 2 20 bars back resistance : 1.9186 @bar100 & 20 bars back support : 1.908 @bar15 2006.07.19 15:27:54 2005.03.02 16:30 GoGetShorts-2.21x GBPUSD,M30: SELL order opened : 1.9121 2006.07.19 15:27:54 2005.03.02 16:30 GoGetShorts-2.21x GBPUSD,M30: open #2 sell 0.05 GBPUSD at 1.9121 sl: 1.9168 tp: 1.9016 ok 2006.07.19 15:27:54 2005.03.02 16:30 GoGetShorts-2.21x GBPUSD,M30: open #1 sell 0.05 GBPUSD at 1.9121 sl: 1.9168 tp: 1.9016 ok これらのバーナンバーをどのように理解すればよいのでしょうか? 少なくともサポート・バーは、15,49,205のように連続してる。 抵抗線はどうなっているのでしょうか?100,44,109...チャートで見ると、最初の抵抗線は実際には100ではなく、20の値の配列の最初のものであることがわかります。1=100のように? ということは、最初の2つの注文は、その注文の前の15本のサポートバーの番号に対応し、もし100が1を意味するなら、抵抗は20本のバーの配列の最初のバーで発生したのです。 Gogetter EA Does the print function コーディングヘルプ...アラートの代わりにインジケータをフィルタリングする方法を教えてください。 12345678910...15 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
このEAをフォワードテストしたことがありますか?
ねえ
急いで作業するものを与えるために、私は明白な何かを見逃していました。次のようなコードの行を修正してください。
if(OrderSymbol()==Symbol()||OrderMagicNumber()==MagicNumber))
を
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber)のようになります。
すみません、見落としがありました。同じEA、同じMagicnumberで複数通貨を取引するようになると、混乱するんですね。![](https://c.mql5.com/forextsd/smiles/embaressed_smile.png)
とにかく、あなたがうまくいっていることがうれしいです。お疲れ様でした、そしてあなたは全ての賞賛に値します。![](https://c.mql5.com/forextsd/smiles/smile.png)
ちょっと。
急いで作業するものを与えるために、私は明白な何かを見逃していました。次のようなコードの行を修正してください。
if(OrderSymbol()==Symbol()||OrderMagicNumber()==MagicNumber))
を
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber)のようになります。
すみません、見落としがありました。同じEA、同じMagicnumberで複数通貨を取引するようになると、混乱するんですね。![](https://c.mql5.com/forextsd/smiles/embaressed_smile.png)
とにかく、あなたが元気でいてくれることがうれしいです。よくやった、あなたはすべての称賛に値します。ということで、気になったのですが、そのままにしておきました...終わりよければすべてよし...修正完了です。![](https://c.mql5.com/forextsd/smiles/regular_smile.png)
GGlongsビルド1.05
これで良しとします。
複数注文のカウント方法の強化、複数注文の処理・修正等の問題点を指導してくれたMajiに改めて感謝します。
これは、新しいトレーリングストップ機能と新しいカウント機能を 全体に使用しています。
また、下に添付したグラフのサムネイルを作成したシグナル_2についても作業を行いました。これはメイントレンドシグナルです。カウンタートレンドのシグナル_1はまだ試していません。しかし、GBP/USD 5mチャートへの再展開のために、この設定でsignal_2は許容範囲です。
フォワードテストでは、前バージョンのGGlongsは今朝明確な買いシグナルを入力することができませんでした。v1.01のシグナルロジックを見直すと、自分が思っていた以上に、全てが混ざっていたことが分かりました。とにかく問題は解決しました。v1.01の時よりもv1.05の方がフォワードテストがうまくいくはずです。v1.05はv1.01よりもフォワードテストがしやすくなっているはずだ。
変更前のチャートでは、全く修正されていないことに気づきました...以前のように、最後のシリーズの跡に新しいシリーズが入るわけでもありません...なぜでしょう?私が行った変更でどうしてそうなるのだろう?
信号のロジックを間違えたからだとわかりました...謎は解けました。
困ったなあ......。
これは、GGlでうまく機能しているものです....
{
int trade;
for(trade=OrdersTotal()-1;trade>=0;trade--)
{
OrderSelect(trade,SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol()!=Symbol()&&OrderMagicNumber()!=MagicNumber)
continue;
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber)
if(TrailingStopMode && TrailingStop > 0) {
if(Bid - OrderOpenPrice() > Point * TrailingStop || OrderOpenPrice() - Bid >= 0) {
if(OrderStopLoss() < Bid - Point * TrailingStop || OrderStopLoss() == 0) {
OrderModify(OrderTicket(), OrderOpenPrice(), Bid - Point * TrailingStop, OrderTakeProfit(), 0, MediumSeaGreen); //etc.
}//for
}
}
}
} [/PHP]
so....
why doesn't this work in the GGs???
[PHP]int ModifyTrades()
{
int trade;
for(trade=OrdersTotal()-1;trade>=0;trade--)
{
OrderSelect(trade,SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol()!=Symbol()&&OrderMagicNumber()!=MagicNumber)
continue;
if(OrderSymbol()==Symbol()&&OrderMagicNumber()==MagicNumber)
if(TrailingStopMode && TrailingStop > 0) {
if((OrderOpenPrice() - Ask) > (Point * TrailingStop || Ask - OrderOpenPrice() >= 0)) {
if((OrderStopLoss() > (Ask + Point * TrailingStop)) || (OrderStopLoss() == 0)) {
OrderModify(OrderTicket(), OrderOpenPrice(), Bid - Point * TrailingStop, OrderTakeProfit(), 0, MediumSeaGreen); //etc.
}//for
}
}
}
}次のコーディングの課題...
EAのロジックにサポートとレジスタンスを追加したいのですが・・・。
これは、指定したバー 数の最高値を返すというもので、うまくいきます。
double HIGH = High;
double LOW = Low[Lowest (NULL, 0, MODE_LOW, SupportBarsBack, LStartBack)];GGに着目してみると。30mチャートで145本ごとに最高値があり、その後に3つの逆張りの売りシグナルがあることに気づきました。私は、カウンタートレンドの売りシグナルを、5EMAが150EMAの上にある18EMAを上から下へクロスするたびに発生するものと定義しています。つまり、新高値の後に売りシグナルが続くというパターンです。
さらに、新高値の後の最初の売りシグナルは、あまり生産的でないことがわかります。2回目のシグナルは一般的にもっと報われ、3回目などはより大きな動きが起こるところです。
それで...
それぞれの状況に合わせたシグナルを生成できるようになったので、新高値または現在の145bar期間の最高値に関連して、これらの異なる発生時に実行するシグナルをカスタマイズしたいと思います。
シグナルをカスタマイズして処理することができます...
課題は、カウンタートレンドの売りシグナルを現在の145barの期間の最高値に関連して見つけることと、このシグナルがその期間の最高値からすでに何回発生したかをカウントすることです。
シグナルの発生回数をどう数えるのかがよくわかりません。チャート上でカウントすることはできますが、コードでカウントするのはどうすればいいのでしょうか?
最高値が発生した移動 平均のクロスシグナルを取得した時点から、配列の何本前にあるかを判断するにはどうすればよいですか。
OK 配列の最大値と最小値を取得する方法はわかりました...これで値が発生したバー番号がわかりますが、チャートのバー番号で表示されます...
移動 平均のクロスが発生したバーの番号を得ることができれば、その2つを引いて、シグナルの発生から何本後ろのサポートまたはレジスタンスであるかを確認することができます。
移動平均のクロス信号が発生したときのチャートのバーナンバーはどうすればわかるの?
double HIGH = High;
double LOW = Low[Lowest (NULL, 0, MODE_LOW, SupportBarsBack, LStartBack)];
//support and resistance location
int Hloc = ArrayMaximum(High);
int Lloc = ArrayMinimum(Low);
.
.
.
Print("Order Number: ",OrderTicket() ," ",ResistanceBarsBack," bars back resistance : ",HIGH," @bar",Hloc," & ",SupportBarsBack," bars back support : ",LOW," @bar",Lloc);
[/PHP]
this is what this code is giving me...
[PHP]2006.07.19 15:27:54 2005.03.10 21:30 GoGetShorts-2.21x GBPUSD,M30: Order Number: 6 20 bars back resistance : 1.9284 @bar109 & 20 bars back support : 1.9204 @bar205
2006.07.19 15:27:54 2005.03.10 21:30 GoGetShorts-2.21x GBPUSD,M30: SELL order opened : 1.9223
2006.07.19 15:27:54 2005.03.10 21:30 GoGetShorts-2.21x GBPUSD,M30: open #6 sell 0.05 GBPUSD at 1.9223 sl: 1.9270 tp: 1.9118 ok
2006.07.19 15:27:54 2005.03.10 21:30 GoGetShorts-2.21x GBPUSD,M30: open #5 sell 0.05 GBPUSD at 1.9223 sl: 1.9270 tp: 1.9118 ok
2006.07.19 15:27:54 2005.03.07 15:30 GoGetShorts-2.21x GBPUSD,M30: Order Number: 4 20 bars back resistance : 1.9224 @bar44 & 20 bars back support : 1.9114 @bar49
2006.07.19 15:27:54 2005.03.07 15:30 GoGetShorts-2.21x GBPUSD,M30: SELL order opened : 1.9146
2006.07.19 15:27:54 2005.03.07 15:30 GoGetShorts-2.21x GBPUSD,M30: open #4 sell 0.05 GBPUSD at 1.9146 sl: 1.9193 tp: 1.9041 ok
2006.07.19 15:27:54 2005.03.07 15:30 GoGetShorts-2.21x GBPUSD,M30: open #3 sell 0.05 GBPUSD at 1.9146 sl: 1.9193 tp: 1.9041 ok
2006.07.19 15:27:54 2005.03.02 16:30 GoGetShorts-2.21x GBPUSD,M30: Order Number: 2 20 bars back resistance : 1.9186 @bar100 & 20 bars back support : 1.908 @bar15
2006.07.19 15:27:54 2005.03.02 16:30 GoGetShorts-2.21x GBPUSD,M30: SELL order opened : 1.9121
2006.07.19 15:27:54 2005.03.02 16:30 GoGetShorts-2.21x GBPUSD,M30: open #2 sell 0.05 GBPUSD at 1.9121 sl: 1.9168 tp: 1.9016 ok
2006.07.19 15:27:54 2005.03.02 16:30 GoGetShorts-2.21x GBPUSD,M30: open #1 sell 0.05 GBPUSD at 1.9121 sl: 1.9168 tp: 1.9016 ok
これらのバーナンバーをどのように理解すればよいのでしょうか?
少なくともサポート・バーは、15,49,205のように連続してる。
抵抗線はどうなっているのでしょうか?100,44,109...チャートで見ると、最初の抵抗線は実際には100ではなく、20の値の配列の最初のものであることがわかります。1=100のように?
ということは、最初の2つの注文は、その注文の前の15本のサポートバーの番号に対応し、もし100が1を意味するなら、抵抗は20本のバーの配列の最初のバーで発生したのです。