おいしい情報
掲示板トップ≫掲示板をみる
57 takechanさん
おいしい情報をゲットすると、どうしても独り占めにしたくなるのが人情です。
でも、そんな了見の狭いことを言わずに、気前よく情報共有しましょうよ、というスレッドです。
でも、そんな了見の狭いことを言わずに、気前よく情報共有しましょうよ、というスレッドです。
2010/05/06 13:13
【新しい書き込み順に表示】|古い書き込み順に表示
57_8 takechanさん
この情報は、めっちゃ高いっすよ。
読んだ方は、お一人様につき、金1万円を申し受けます。(笑)
メタトレーダーのEAによる自動売買で、たとえば、ポジションを最大でも1つしか持ちたくない場合、バックテストではうまくいくのに、なぜか実売買ではポジションが複数(時には何十、何百も)発注されてしまう事件(いわゆる「多重発注」)が後を絶ちません。
そこで、多重発注を防止するために、私の場合は、これまで以下のようなコードを書いてきました。
まず、
int pos = 0;
for(int i=0; i<OrdersTotal(); i++)
{
if(OrderSelect(i,SELECT_BY_POS) == false) break;
if(OrderSymbol() != Symbol() || OrderMagicNumber() != magic) continue;
{
if(OrderType() == OP_BUY || OrderType() == OP_SELL) pos++;
break;
}
}
として、ポジション数を確認します。その上で、新規発注をする際に、
if(売買条件1 && 売買条件2 && pos==0)
OrderSend(…);
として、ポジション数が「0」のときだけ新規発注できるようにするわけです。
しかし、このプログラムには、私自身ずっと疑問がありました。
1.OrderSend()関数が成功した場合
この場合は、ticket番号が直ちに返されるため、次にティックが更新された時にポジション数が「1」になるので多重発注は防止できます。
2.OrderSend()関数が失敗した場合
この場合は、実際にもポジション数は「0」のままなので、多重発注の問題ははじめから発生せず、あとは、OrderSend()関数のリトライの問題が残るだけです。
3.OrderSend()関数が成功も失敗もしない場合
疑問なのはこの場合です。「プログラミングの常識」からすれば、この場合メタトレーダーは、それより先のプログラムを読み込まずに、そこで、ストップ状態になるので、いくらティックが更新されても多重発注しないはずです。
しかし、この「プログラミングの常識」というのは、本当に確かなのか、という疑問です。
つまり、何らかの事情により、その先のプログラムが読み込まれ、それがティックごとに繰り返されると、ポジション数が「0」のままなので、複数のOrderSend()関数が実行され、多重発注が生じるのではないか、ということです。
このような疑問は、ずいぶん以前から持っていて、パパやママにも相談したのですが、「わしらにはわからんがねー。」と言われたので(笑)、自分なりにいろいろ調べたのですが、解答が見つからず、悶々としていました。
そこで、先日、「FXメタトレーダー実践プログラミング」の著者である豊嶋先生に、直接問い合わせることができ、豊嶋先生から驚くべきご回答をいただきました。
先生によりますと、EAを自作する人の多くは私と同じようなコードを書いて、うまくいっているのですが、ごく稀に多重発注されたケースがあるとのことです。
そこで、豊嶋先生が考えた解決策として、
int ticket = OrderSend(…);
というように、OrderSend()関数の返し値をいったん変数に置き換えることによって、なぜか多重発注がなくなるらしいです。
しかし、このへんのカラクリについては、豊嶋先生ご自身も釈然としないので、著書には触れていないそうです。
恐らく、OrderSend()関数の返し値をいったん変数に置き換えることによって、「成功」か「失敗」のいずれかが確定するまで、プログラムの読み込みを停止させる効果があるのだろう、と私は考えています。
私が知る限り、このようなコードを見たことがないので、ほとんどのEAプログラマーが知らない裏ワザなのかな、と思って投稿いたしました。
追伸
1万円は、私の口座に振り込んでおいてくださいね。(笑)
読んだ方は、お一人様につき、金1万円を申し受けます。(笑)
メタトレーダーのEAによる自動売買で、たとえば、ポジションを最大でも1つしか持ちたくない場合、バックテストではうまくいくのに、なぜか実売買ではポジションが複数(時には何十、何百も)発注されてしまう事件(いわゆる「多重発注」)が後を絶ちません。
そこで、多重発注を防止するために、私の場合は、これまで以下のようなコードを書いてきました。
まず、
int pos = 0;
for(int i=0; i<OrdersTotal(); i++)
{
if(OrderSelect(i,SELECT_BY_POS) == false) break;
if(OrderSymbol() != Symbol() || OrderMagicNumber() != magic) continue;
{
if(OrderType() == OP_BUY || OrderType() == OP_SELL) pos++;
break;
}
}
として、ポジション数を確認します。その上で、新規発注をする際に、
if(売買条件1 && 売買条件2 && pos==0)
OrderSend(…);
として、ポジション数が「0」のときだけ新規発注できるようにするわけです。
しかし、このプログラムには、私自身ずっと疑問がありました。
1.OrderSend()関数が成功した場合
この場合は、ticket番号が直ちに返されるため、次にティックが更新された時にポジション数が「1」になるので多重発注は防止できます。
2.OrderSend()関数が失敗した場合
この場合は、実際にもポジション数は「0」のままなので、多重発注の問題ははじめから発生せず、あとは、OrderSend()関数のリトライの問題が残るだけです。
3.OrderSend()関数が成功も失敗もしない場合
疑問なのはこの場合です。「プログラミングの常識」からすれば、この場合メタトレーダーは、それより先のプログラムを読み込まずに、そこで、ストップ状態になるので、いくらティックが更新されても多重発注しないはずです。
しかし、この「プログラミングの常識」というのは、本当に確かなのか、という疑問です。
つまり、何らかの事情により、その先のプログラムが読み込まれ、それがティックごとに繰り返されると、ポジション数が「0」のままなので、複数のOrderSend()関数が実行され、多重発注が生じるのではないか、ということです。
このような疑問は、ずいぶん以前から持っていて、パパやママにも相談したのですが、「わしらにはわからんがねー。」と言われたので(笑)、自分なりにいろいろ調べたのですが、解答が見つからず、悶々としていました。
そこで、先日、「FXメタトレーダー実践プログラミング」の著者である豊嶋先生に、直接問い合わせることができ、豊嶋先生から驚くべきご回答をいただきました。
先生によりますと、EAを自作する人の多くは私と同じようなコードを書いて、うまくいっているのですが、ごく稀に多重発注されたケースがあるとのことです。
そこで、豊嶋先生が考えた解決策として、
int ticket = OrderSend(…);
というように、OrderSend()関数の返し値をいったん変数に置き換えることによって、なぜか多重発注がなくなるらしいです。
しかし、このへんのカラクリについては、豊嶋先生ご自身も釈然としないので、著書には触れていないそうです。
恐らく、OrderSend()関数の返し値をいったん変数に置き換えることによって、「成功」か「失敗」のいずれかが確定するまで、プログラムの読み込みを停止させる効果があるのだろう、と私は考えています。
私が知る限り、このようなコードを見たことがないので、ほとんどのEAプログラマーが知らない裏ワザなのかな、と思って投稿いたしました。
追伸
1万円は、私の口座に振り込んでおいてくださいね。(笑)
2010/07/04 23:43
57_7 takechanさん
本当においしい情報かどうかわかりませんが…。
ちょっと前に、自作したシステムです。
検証期間 08/6/16~09/7/31
トータル利益 494960円(単利計算)
トレード回数 112回
勝率 81.25%
最大DD額 -26180円
PF 4.73
PR 1.09
複利計算による資産増加率 16.16倍
複利計算による最大DD率 -15.84%
これは、日経225先物(ミニ)とTOPIX先物(ミニ)とのアービトラージ(サヤ取りの一種)戦略で、いわゆる「寄り引け」ではなく「寄り寄り」トレードのバックテストです。株式や先物取引の経験の無い方はピンとこないかもしれませんが、オークション方式の相場では、約定しないことがあります。とくにサヤ取りの場合、片方が約定しないと、命取りになります(損切りをつけないため)。この点、朝の寄り付きは、よほどのことがない限り約定するので、安全のために「寄り寄り」としたわけです。
検証期間が短いのは、TOPIX先物(ミニ)自体が新しい商品なので、仕方がありません。
私がこれまで作ったシステムの中で最高傑作です。というより、「この世の中」で最高傑作でしょうね。複利計算による資産増加率が16.16倍ということは、100万円が2年で2億5000万円になる計算です。しかも、最大DD率((ピーク時の資産-最大DD額)/ピーク時の資産)が、15%台ということは、非常に安定しています。言うまでもなく、その後のフォワードテストでも全く衰え知らずで、現在でも同じペースで勝ち続けている不死身の(堅牢性のある)システムです。
ところが、このシステムは、3~4回実運用をして、すぐに運用を中止しました。実運用上重大な欠点があったからです。すなわち、エントリー条件で当日の始値がカギになるところ、「寄り寄り」トレードのために、朝の寄り付き前に、「板情報」から当日の始値を予測しなければならないということです。しかし、この予測がどうしても当たらないわけです(建玉加重平均などを利用して必死に計算しましたがダメでした)。結局、このシステムは幻のシステムとして、私の心の中に封印されたままです。(泣)
前置きが長くなりました。ここからが本題です。
実は、このシステム、計算期間やエントリー条件などのパラメーター数が非常に少く、かつ、それらのパラメーターを多少変えても、不思議なことにパフォーマンスがびくともしないんです。
つまり、本当に不死身の(堅牢性のある)システムは、
1.パラメーターの数が少ない
2.パラメーターを多少変えてもパフォーマンスが落ちない
ということをこの時悟りました。とくに、計算期間のパラメーターを多少変えても大丈夫ということは、どんな時代、どんな相場状況でも生き残れる可能性が高いことを意味します。
なので、あるシステムが優れているかどうかは、最終的には実運用してはじめて分かることなのですが、上記1.2を基準にすれば、おおよその事前判断が可能なのではないかと私は考えています。
ところで、メタトレーダーのストラテジーテスターには、optimization(自動最適化)機能がついています。知らない方のために、簡単に説明させていただくと、optimization機能というのは、たとえば、移動平均線の計算期間を、10~30という具合に範囲指定すると、その中で利益の出そうな計算期間をメタトレーダーが自動で割り出してくれるものです。もちろん、これでガチガチに最適化したシステムは危険です。しかし、このoptimization機能は、システムの堅牢性を知る上でとても役に立ちます。
ご承知の方も多いかもしれませんが、optimization機能を使用した場合、PFが1.0以上のものしか表示されません。なので、たとえば、2本の移動平均線のクロスサインシステムの場合、長期線を10~50、短期線を3~10という具合に範囲指定して、optimization機能を発動すると、PF1.0以上の「優良候補」だけがいくつか表示されるわけです。ここで、もしも、その「優良候補」の数が多いシステムは、パラメーターを多少変えても堅牢性があることに他なりません。
ということは、あるシステムがあったとして、これにoptimization機能を発動させた場合、「優良候補」の数が多ければ多いほど、そのシステムには堅牢性があることになり、「優良候補」の数が少なければすくないほど、そのシステムには堅牢性が無いことになるわけです。
あるシステムが末永く使えるかどうかを、比較的簡単に予測するのに、メタトレーダーのoptimization機能は有効ではないかというのが、私の結論です。
まあ、最終的には実運用してみないと真偽はわかりませんが、少しでも、システムの堅牢性を事前にチェックするのには、いい方法かなと思っています。
ちょっと前に、自作したシステムです。
検証期間 08/6/16~09/7/31
トータル利益 494960円(単利計算)
トレード回数 112回
勝率 81.25%
最大DD額 -26180円
PF 4.73
PR 1.09
複利計算による資産増加率 16.16倍
複利計算による最大DD率 -15.84%
これは、日経225先物(ミニ)とTOPIX先物(ミニ)とのアービトラージ(サヤ取りの一種)戦略で、いわゆる「寄り引け」ではなく「寄り寄り」トレードのバックテストです。株式や先物取引の経験の無い方はピンとこないかもしれませんが、オークション方式の相場では、約定しないことがあります。とくにサヤ取りの場合、片方が約定しないと、命取りになります(損切りをつけないため)。この点、朝の寄り付きは、よほどのことがない限り約定するので、安全のために「寄り寄り」としたわけです。
検証期間が短いのは、TOPIX先物(ミニ)自体が新しい商品なので、仕方がありません。
私がこれまで作ったシステムの中で最高傑作です。というより、「この世の中」で最高傑作でしょうね。複利計算による資産増加率が16.16倍ということは、100万円が2年で2億5000万円になる計算です。しかも、最大DD率((ピーク時の資産-最大DD額)/ピーク時の資産)が、15%台ということは、非常に安定しています。言うまでもなく、その後のフォワードテストでも全く衰え知らずで、現在でも同じペースで勝ち続けている不死身の(堅牢性のある)システムです。
ところが、このシステムは、3~4回実運用をして、すぐに運用を中止しました。実運用上重大な欠点があったからです。すなわち、エントリー条件で当日の始値がカギになるところ、「寄り寄り」トレードのために、朝の寄り付き前に、「板情報」から当日の始値を予測しなければならないということです。しかし、この予測がどうしても当たらないわけです(建玉加重平均などを利用して必死に計算しましたがダメでした)。結局、このシステムは幻のシステムとして、私の心の中に封印されたままです。(泣)
前置きが長くなりました。ここからが本題です。
実は、このシステム、計算期間やエントリー条件などのパラメーター数が非常に少く、かつ、それらのパラメーターを多少変えても、不思議なことにパフォーマンスがびくともしないんです。
つまり、本当に不死身の(堅牢性のある)システムは、
1.パラメーターの数が少ない
2.パラメーターを多少変えてもパフォーマンスが落ちない
ということをこの時悟りました。とくに、計算期間のパラメーターを多少変えても大丈夫ということは、どんな時代、どんな相場状況でも生き残れる可能性が高いことを意味します。
なので、あるシステムが優れているかどうかは、最終的には実運用してはじめて分かることなのですが、上記1.2を基準にすれば、おおよその事前判断が可能なのではないかと私は考えています。
ところで、メタトレーダーのストラテジーテスターには、optimization(自動最適化)機能がついています。知らない方のために、簡単に説明させていただくと、optimization機能というのは、たとえば、移動平均線の計算期間を、10~30という具合に範囲指定すると、その中で利益の出そうな計算期間をメタトレーダーが自動で割り出してくれるものです。もちろん、これでガチガチに最適化したシステムは危険です。しかし、このoptimization機能は、システムの堅牢性を知る上でとても役に立ちます。
ご承知の方も多いかもしれませんが、optimization機能を使用した場合、PFが1.0以上のものしか表示されません。なので、たとえば、2本の移動平均線のクロスサインシステムの場合、長期線を10~50、短期線を3~10という具合に範囲指定して、optimization機能を発動すると、PF1.0以上の「優良候補」だけがいくつか表示されるわけです。ここで、もしも、その「優良候補」の数が多いシステムは、パラメーターを多少変えても堅牢性があることに他なりません。
ということは、あるシステムがあったとして、これにoptimization機能を発動させた場合、「優良候補」の数が多ければ多いほど、そのシステムには堅牢性があることになり、「優良候補」の数が少なければすくないほど、そのシステムには堅牢性が無いことになるわけです。
あるシステムが末永く使えるかどうかを、比較的簡単に予測するのに、メタトレーダーのoptimization機能は有効ではないかというのが、私の結論です。
まあ、最終的には実運用してみないと真偽はわかりませんが、少しでも、システムの堅牢性を事前にチェックするのには、いい方法かなと思っています。
2010/05/12 11:28
57_6 takechanさん
スラさん
トレード手法は、10人10色 千差万別…。
でも、スラさんがこの掲示板にはじめて登場してから、ずーっと思っていることですが、スラさんと私は相場に関する思考がほぼ同じなんです。
PCを使うか、裁量でこなすか、の違いがあるだけで。
追伸
また、スラさんのブログに遊びに行きますね。(^0^)V
トレード手法は、10人10色 千差万別…。
でも、スラさんがこの掲示板にはじめて登場してから、ずーっと思っていることですが、スラさんと私は相場に関する思考がほぼ同じなんです。
PCを使うか、裁量でこなすか、の違いがあるだけで。
追伸
また、スラさんのブログに遊びに行きますね。(^0^)V
2010/05/06 16:38
57_5 スラさん
つー事は・・・・
思考を巡らせる人の行き着くところは同じって事っすね~;
ん~~~すげー勝率あがりましたね~~
はぁ~~しかしスラの口座は・・・・ひぇ~~~
掲示板かいてる場合じゃないのに何を余裕かましてるんだか;
思考を巡らせる人の行き着くところは同じって事っすね~;
ん~~~すげー勝率あがりましたね~~
はぁ~~しかしスラの口座は・・・・ひぇ~~~
掲示板かいてる場合じゃないのに何を余裕かましてるんだか;
2010/05/06 16:23
57_4 takechanさん
なんだか、このスレッド封印したくなってきたなあ。
いやいや、そんな了見の狭いことでは、sarahさんのサインがもらえなくなるし。(笑)
いやいや、そんな了見の狭いことでは、sarahさんのサインがもらえなくなるし。(笑)
2010/05/06 16:12
57_3 takechanさん

もーう、スラさんったら…。
私も両建ては好きなんです~~。
内緒にしてたのに…(笑)
USD/JPY5分足での両建戦略です。
勝率 77.8%
PF 1.74
最大DD額/初期投資金額(100万円) 4.1%

もーう、スラさんったら…。
私も両建ては好きなんです~~。
内緒にしてたのに…(笑)
USD/JPY5分足での両建戦略です。
勝率 77.8%
PF 1.74
最大DD額/初期投資金額(100万円) 4.1%
2010/05/06 15:49
57_2 スラさん
おおおおおおお~~~(・・)パチパチパチ
立証したわけですね~
今日から連休明けの平日で忙しいっす;
ちなみにスラはドテンをやったこと1回もないんですよ。。
頭では理論は分っているけど~どうもしたくない手法なんすよね。。
ではスラも、お返しにスバラシイ情報を。。
むしろシストレこそ、ちからを発揮できるのが両建てと思っています。
ある状況 で ある条件 が 揃った時に 両建て。
って~カッコイイ事いってもスラにはここまで。。
これらをシステム化には出来ませ~ん;
どうしてシストレに向いているのかって?
だって手動で利益出るもん。。。。
ただ手動の場合、、とてつもなく頭が混乱するデメリットがあるから。
PCならサクサク計算しますからね~;
立証したわけですね~
今日から連休明けの平日で忙しいっす;
ちなみにスラはドテンをやったこと1回もないんですよ。。
頭では理論は分っているけど~どうもしたくない手法なんすよね。。
ではスラも、お返しにスバラシイ情報を。。
むしろシストレこそ、ちからを発揮できるのが両建てと思っています。
ある状況 で ある条件 が 揃った時に 両建て。
って~カッコイイ事いってもスラにはここまで。。
これらをシステム化には出来ませ~ん;
どうしてシストレに向いているのかって?
だって手動で利益出るもん。。。。
ただ手動の場合、、とてつもなく頭が混乱するデメリットがあるから。
PCならサクサク計算しますからね~;
2010/05/06 14:14
57_1 takechanさん

はっきり言って、この情報は高いですよ。(笑)
よほど迷いましたけど、トレコミュ様の熱意に敬意を表して公開することにしました。
画像の上のシステムは
勝率 27.38%
PF 0.67
のゴミ以下システムです。
画像の下のシステムは
勝率 58.9%
PF 1.39
の普通のシステムです。
実は、どちらも全く同じテクニカル指標を使いました。あの有名な、二本の移動平均線(5本と25本)のクロスサインを利用したシステムです。
一体何が違うかというと、
上は、利食いも損切りもなしでドテンを繰り返しています。
下は、ドテンサインを無視して、利食い(1.0円)と損切り(1.0円)をつけての持ちっぱなしです。
ドテンシステムがいかにダメかという証明です(もちろん例外はあると思いますが)。
ドテンを繰り返すと、ドテン(とんで)もないことになるぞ~~。

はっきり言って、この情報は高いですよ。(笑)
よほど迷いましたけど、トレコミュ様の熱意に敬意を表して公開することにしました。
画像の上のシステムは
勝率 27.38%
PF 0.67
のゴミ以下システムです。
画像の下のシステムは
勝率 58.9%
PF 1.39
の普通のシステムです。
実は、どちらも全く同じテクニカル指標を使いました。あの有名な、二本の移動平均線(5本と25本)のクロスサインを利用したシステムです。
一体何が違うかというと、
上は、利食いも損切りもなしでドテンを繰り返しています。
下は、ドテンサインを無視して、利食い(1.0円)と損切り(1.0円)をつけての持ちっぱなしです。
ドテンシステムがいかにダメかという証明です(もちろん例外はあると思いますが)。
ドテンを繰り返すと、ドテン(とんで)もないことになるぞ~~。
2010/05/06 13:34



natumi
[02/04 12:55更新]
良ければポンっとお願いします ↓↓↓ 為替ブログ FX 女性投資家 30日(月)…-36.1pips 31日(火)…+10pips 1日(水)…+10pips 2日(木)…+10pips ちょっとづつ回復させ...



Mihawkfx(ミホークエフエックス)
[02/01 05:51更新]
デイトレ派のバナー・右プロフ画像下のバナーの応援クリックお願いします! 応援クリックをよろしくお願いします。 モチベーション維持や更新頻度・ブログレベルにかかわります。 ...





















