コメント欄で入力ミスしても大丈夫です。ページ上方の|編集|ボタン、ないしはセクション毎に[edit]ボタンがありますから、万が一入力ミスがあった場合は編集画面へ飛んで修正がすぐ出来ます。
それが超強力掲示板Wikiの強みです(笑)。いつでも誰でも修正可能(笑)。
ヒロさん、いらっしゃい(笑)。じゃばさんのトコロでお会いしてましたよね(笑)?
>日本競馬投資協会のことご存知だったのですね。
はい。多分「投資競馬経験者」なら、多かれ少なかれ知っていると思います。
別に僕個人ではそんな被害を受けているわけではないんですが(笑)、ワリと「投資競馬マニア」の人達がいて、そう言う方々は通信講座テキスト代+何十万円も増額投資でスったりしているらしいですね。
結局一番の問題は増額の為の投資予算を計算する術を持たないこの一言に尽きると思います。「買い続けていればいつかは馬券は当たる」のは数学的にも確かにその通りなんですが、ある確率で何レース以内に当てたい、となると話は変わってきます。現実的に戦略を練る段階まで行かないうちに見切り発車ってケースが多いんではないでしょうか?そして、確かに「追い上げ」は予想で苦労した人々にとってはある段階では「良く当たる」馬券術なんですよ。
別に僕は今は増額否定論者ではありませんが、単に「自分の懐具合と相談して欲しい」って事で敢えてこのページを書きました。「この予算じゃムリだな」って思う人なら別の手法を考えればいいですし、「それでもやってみたい」のなら、別に止める理由がないからです。 -- 亀田? 2006-07-12 (水) 13:05:32
この団体(と言うか実際は通販会社ですが)が出てきて良かった事は、競馬に対して「資金配分がもの凄く大事だ」と言う啓蒙をした事だと思います。これが、それまでの「特券で5点買い」等と言った無計画な購入法を多くの人々に見直させるキッカケを作った事に関しては素直に評価していいと僕も思っています。 -- 亀田? 2006-07-12 (水) 13:05:32
増額投資ならどうなんでしょうねえ・・・・・・?
数年前だったら某巨大掲示板から発生した投資競馬マニアの大手のサイトがあったんですが、今は潰れてしまったようです。
現時点で「投資」と謳ってる個人サイトは知ってる限りほぼ壊滅状態でして、それでなければ「投資」と冠を打っている「勝馬予想販売」のサイトが殆どだと思います。
某巨大掲示板でも数年周期で必ずと言っていいほど「増額投資」系のスレッドは立ち上がりはしますが、あんまり長くは続かないようです。恒常的にこの話を取り扱ってるサイトはあまりありませんね。
ただし、増額投資に限らず投資観点で色々なデータを実験的に扱ってるサイトとして、お薦めできるのはむーてんさんのブログくらいではないでしょうか?詳しくはリンク集に譲りますが、ここでしたら、様々な投資法を研究なされていますし、また、TARGET frontier JVを利用したデータ活用術を精力的に行っております。現状ではむーてんさんのブログがイチオシですね。 -- 亀田? 2006-07-12 (水) 21:05:32
>ちょっとほめすぎではないでしょうか。
いや、そうでもないでしょう(笑)。
レスした事は無いですが、実はむーてんさんのブログはいつもチェックしております(笑)。
かなり積極的なデータ活用法を試みているようなんで注目していました。お互いデータ活用法には苦労しますからね(笑)。そう言う意味でも共感しています。
>実際に試したこともありますが、私の場合、まずはシミュレーションから入りますので、ご指摘のように資金が膨らむことがすぐにわかりました。
この「シミュレーションをする」と言う部分を殆どの「投資競馬マニア」が行わないのです。結構鵜呑みにしますからね。さすがむーてんさんです。
>つまり増額投資は危険、ということですね。
普通に考えるとそう言う結論になりますね。
>以来いろいろ試行錯誤の連続でした(今も続いています)。
これももの凄く良く分かります。
「増額に見切りをつける」行為は次の2つの選択肢しか生まないからです。すなわち、
です。前者は楽ですが、後者はさしずめ荊の道でしょう。
凄く共感します。
>ただ、自分なりの予想法を持って、ある程度の的中実績があれば何とかなるかなという感じはしています。
これは全くその通りだと思います。
むーてんさんが、
>「100円からはじめる…」のシリーズも読破しています。
との事なんで、その文脈に沿って書きますが、日本競馬投資協会の書籍では、「単勝人気順別勝率が唯一絶対の真実である」と言うような書き方をしています。
しかしながら、実はこれは単なる条件付確率の一つであり、本当に大規模な無作為統計だったら、馬1頭あたりの勝率はたったの5〜7%程度です。それを単勝人気順と言う条件で見た場合あの勝率になった、ってだけの話であって、それが別に他の視点からの条件付き確率を否定する根拠にはならないのです。ましてや、大規模サンプルだから他を否定できる根拠になる、ってのは正直ムチャクチャな議論です。
ですから、もちろん標本数が稼げるに越した事はないのですが、むーてんさんが仰るとおり、競馬予想が勝率推定作業だとしたら、
>自分なりの予想法を持って、ある程度の的中実績があれば何とかなる
と言うのは至極もっともな意見だと思います。
>この種の追い上げ法は1点勝負であることが問題で、続けるにはかなりの精神的ストレスを伴います。要するに一日12レースをずっとテレビの前で見ていないといけないことになり、11レース連続ではずしたときの12レースは怖くてみていられません。
これも経験があります(笑)。
僕はたった一回でイヤになってやめちゃいましたが(笑)。
>賭けるレースを選択し、一日ではなくて一ヶ月とかの長いスパンでいくことが大切であること、もうひとつは馬券をうまく組み合わせてレース単位で利益が上がるような資金配分を身につけることが大切ですね。
全くその通りだと思います。
>なかやさんの単勝スペシャルとか複勝スペシャルみたいな賭け方の研究が重要だと最近思います。
あの人は発想がシンプルでホント面白いです(笑)。
なかやさんは、「自分がやってるのは予想競馬だ」って言ってるんですが、お金を賭ける、って意味に於いてはまさしく「投資競馬」思考ですし、やってる事は「投資競馬」なんですね(笑)。
いまや、「単勝人気順に拠るデータ分析」って枠組みを超えて、「投資マインドで競馬に対峙していれば」広い意味で投資競馬って呼んでいいんじゃないか、とも思っています。
今からの定義は「普通に予想して厳密な資金管理」となるのではないか、と言うのが個人的な希望的観測です。
そう言う意味ではなかやさんが「新しい投資競馬世代」の一人なのではないかな、と思っています。 -- 亀田? 2006-07-13 (木) 16:08:20
おお何か盛り上がってますね(笑)。
じゃあ、僕の方もいくつか。
>1レースにかけて外れてそして2レース目。このときの勝率ってやっぱり18%ですよね?
はい。18%です。
ただし、それは単独の1レースだけ賭けて、の確率の話であって、1レースにかけて外れてそして2レース目で当たる確率は、
となります。つまり、14.76%なんですね。
この場合は、1レースにかけて外れてそして2レース目でまたしてもハズれる確率は
となります。つまり85.24%ですね。
このように連続したレース数を単位として考えるとまた結論は変わってきます。
と言うか、一体何の確率に付いて話しているのか?文脈をハッキリさせておかなければならないんですね。そこが確率を話す場合の難しさであり、また、確率と言うのは言語による説明が挿入されないと意味が分からなくなってくるのです。
確率は数式に当て嵌めて天下りに話すのが難しい事象の可能性の話なんです。
>ってことは一日12レース連続してやらなくても気が向いたときにだけかけても勝率は変わらないってことですよね。
全くその通りです。
>ってことは連続してレースに参加しようが気が向いたときにレースに参加しようが的中まで投資を継続するというスタンスを取っていれば99%の確率で24レース以内に出現するということは変わらないんではないでしょうか。。。
全く変わりません。
と言うかそれこそ日本競馬投資協会が「前日の出現回数によって当日の出現確率が変わる」とか言い出したから誤解が蔓延したり、「1日中ターゲット馬券を狙って買い続けなければならない」と言うような無言の圧力をかける原因になったのではないでしょうか?
ヒロさんの解釈通りで間違い無いと思いますよ。と言うか、それが事象の独立性と言う仮定だからです。
ちょっと余談を。
昔のコンピュータの無い時代の学者は「コイン投げ」の実験を実際にやってみて、コインの表が出る確率を実際に調べてみたそうなんですが・・・・・。例えばこんなカンジです。
実験者 | 実験回数 | 頻度(確率) |
ビュフォン | 4040 回 | 0.507 |
ド・モルガン | 4092 回 | 0.5005 |
ジェボンズ | 20480回 | 0.5068 |
ロマノフスキー | 80640回 | 0.4923 |
K.ピアソン | 24000回 | 0.5005 |
フェラー | 10000回 | 0.4979 |
いや、もう昔の学者ってスゴイですね(笑)。根性据わってますよ(笑)。
ロマノフスキーなんて学者さんは80,640回もコインを投げてるんです(笑)。エライですけど、見習いたくないですね(笑)。誰がこんな追試するか、ってーの(笑)。
それはともかく、疑問が一つ。それは・・・・・・。
トイレ行きたくなったらどーしてたんでしょうね(笑)?
いや、そんなの我慢する筈ないですよ(笑)。絶対に(笑)。実験中断してトイレ行ってるハズですってば(笑)。タバコも吸って一休みしたかもしれませんし、ロマノフスキーさんに至ってはロシア人なんで、絶対ウォッカでも飲んで一休みしている筈です(笑)。だって80640回ですよ(笑)?いくら粘着気質でも限度があるでしょう(笑)。
つまり、何が言いたいかと言うと果たして実験中断したからと言って実験に影響を与えるのか?と言う部分です。与えないから独立事象なんですね。なんなら中休み3日くらい取っても、実験結果は変わらない(筈)と言うのが、コイン投げのような独立事象の確率を論ずる際の仮定なんです。
>日本競馬投資協会の肩を持つわけではありませんが
いや、別に肩を持っても構いませんよ(笑)。無礼講で行きましょう(笑)。 ここは基本的に議題が上がるのが重要であって、罵りあいにさえならなければ、色んな立場/考え方の人がいてイイと言うのがポリシーだからです。
では、僕の方からちょっと疑問を。
問題は同じ1番人気でも1倍台の馬と4倍台では勝率は異なりますね。このあたりの 細かいデータ検討がなされていればまだしも、ひとくくりで1番人気、2番人気などで 賭けるのはやはり抵抗があります。
オッズプラス1,2人気のオッズ差など
僕は集計する場合、頭数別ごとの集計なんかはむしろ積極的に行うべきだとは思っているんですが、反面、
単勝人気順とオッズの組み合わせ
と言う分析は正直疑問に感じているんです。単勝人気なら単勝人気、オッズならオッズと分けた方がいいのではないか、と思っています。
これは何でかと言うと、この二つの要素は独立ではないからです。相互に強く依存しあってます。つまり、勝率は単勝人気に比例してて、その単勝人気はオッズに比例しています。そして勝率はオッズにも比例している。
これは回帰分析系の考え方なんですが、こう言う独立変数*1同士が相互に影響し合ってると多重共線性って問題が生じて逆に予測精度が悪くなる現象が良く観察されているから、なんですね。
もちろん世の中に完全に独立である事象を探す方が逆に難しいんですが、オッズと単勝人気順ってのはあまりにもあからさまな問題を抱えてるように見えます。別な言い方すると、オッズならオッズだけ、単勝人気なら単勝人気だけ、に絞って、むしろ相関関係が少なそうな*2ファクターを別に選んで来て、それと共に勝率を予測するようにしたほうが予測精度は高まるような気がするんですけど、いかがでしょうか? -- 亀田? 2006-07-14 (金) 00:49:24
>破産額に上限を与えるため、12連続の場合、リセット再スタートの条件を加えた場合の考え方。
これは正直僕も気になっていたんですよね。
良く「損きりすれば大丈夫だ」って言う人がいますが、かと言って厳密な数学的論議を見たことが無いのも事実です。
ちょっと考えてみましょうか・・・・・・?
>これに絡んで打ち切りオッズの性質(バラツキ具合)がどう影響するのか、興味があります。
こっちはあんまり関係ないのではないでしょうか?
競馬関係のサイト/書籍では良く「期待値の分布」なんて議論見かけますが、期待値はあくまで予測平均であって、あんまり分散は関係ないとは思います。
と言うか、それこそ長期に渡って「損きり」し続けてればある値に収束していくのではないでしょうか? -- 亀田? 2006-07-14 (金) 16:36:29
>回収率80%でも儲けられるロジックがあれば大丈夫ですよ。。。
う〜んどうなんでしょうねえ・・・・・・。 今数式弄くり出した辺りなんですが、普通の期待値論議でいいのかな・・・・・・?
>HRPTV5Cさん&ヒロさん
VBA扱えるんでしたら、取り合えず
「馬法の方程式で12レース追い上げ損切り」
というモンテカルロ・シミュレーションできますか?(正直言うと、僕はまだVBAを操作しきれてません・涙)
仮想で10万回くらい損切りモンテカルロ行えばどうなるんでしょうね・・・・・・?
>損きりは破産までの時間的余裕を与える事は確かです。
うん。確かに計算的にもそのようですね。これは面白いです。
例えば回収期待値80%の馬券を追い上げ、かつ、12レースで損切り、と言うと直感的にはやっぱり回収率は80%程度で変わらないんじゃないか、と思うんですが、意外や意外、どうやら若干回収率は良くなるようです。驚きました。
以下に考え方と計算を述べます。
急いで計算した為にひょっとして、考え方、または計算が間違っている可能性があります。
そこで、検算なり、モンテカルロ・シミュレーションをするなりして、追試してみて下さい。
ところで、競馬で回収期待値と言うと、次の公式
回収期待値=的中率×オッズ
が有名です。
一方、統計学で言うところの期待値E(X)の定義とは次のようなものです。
これは一般化すると加重平均の定義なんですね。期待値とは加重平均の事であるわけです。
ここで、xとは確率pで取りえる確率変数を表していています。
一般に、競馬で言う回収期待値とは、上の式に於ける総和を取らない場合の式で、x=平均オッズ、p=馬券の的中率、としているわけです。
さて、ここで、例えば単勝2番人気(的中率18%、平均オッズ4.1倍)を馬法の方程式で追い上げる事を考えてみます。
仮に投資1レース目に100円投入して、1レース目に的中すると、
100円×4.1倍=410円
払い戻されるワケです。つまり、この「平均オッズ4.1倍」と言うのが的中率18%に対する確率変数なんですね。
ところが、投資1レース目にハズして投資2レース目に的中した場合はどうかと言うと、これがちょっとややこしくなってきます。
原則的に馬法の方程式による2レース目の投資金と2レース目までの累積投資金をそれぞれ
として、的中オッズをεとすると投資2レース目で的中した場合の確率変数は
となります。
実は、当たり前なんですが、平均オッズそのものが確率変数にはならないわけです。
つまり、正確に言うと、回収期待値の値を求める場合、確率変数になるのは平均オッズではなくって、払戻の値になるんですね。
すなわち、確率変数xは、馬法の方程式の数列式と総和を利用して、
と計算できます。これが確率変数なんですね。*3
重要なのは今まで賭けた投資金の何倍が戻るのかが重要であって、当たる以上初期投資金は関係無いと言う部分です。これは理論的には納得できます。
次に的中確率Pを考えてみます。
何レースかハズしたアト、的中する確率は幾何分布に従うと言った前提でした。
すなわち、
投資1レース目に当たる確率=18% 投資2レース目に当たる確率=14.76% 投資3レース目に当たる確率=12.1032%・・・・・・
となって行きます。
ここで大事なのは、1日と言うスパンで見て、1レース目から投資し始めて何レース目で当たるのか?を議論する場合、1日に何回単勝2番人気が出現するのか?と言う問題は関係がない、と言う部分です。
すなわち、増額投資系の理論では当たったら勝ち逃げが原則なんで、先程求めた確率変数xはこの幾何分布上の確率にダイレクトに従う、と言う事です。*4
つまり、少なくとも計算しなければならない期待値の一部分は期待値の定義により、次のように書き表せます。
上での計算式は12レースまで投資して、12レース以内に当たって払戻金が手に入るシチュエーションの場合の期待値です。
次に12レース以上かかって的中する場合=損切り条件を考えてみます。
12レース以内に的中する確率は、幾何分布上の確率Pを利用すると、
でした。しかしながら当然この和は100%ではありません。
逆に言うと、的中するまでに12レース以上かかってしまう確率は
で表現できます。
そして、この確率で12レースまでの投資金を全て諦めなければならないので、当然Qに従う確率変数は、12レースまでの投資金の総和となります。
すなわち、もう一つの損失期待値は、
となります。こちらの損失期待値は、初期投資金額に依存するんですね。
結果トータルの和が求めるべき期待値となり、
が12レースで損切りした場合の儲かる/損する平均金額という事が出来ます。
では実際にλ=1.6、単勝2番人気の的中率が18%、平均オッズが4.1倍として試算してみましょう。
確率変数と確率との関係*5を表にしてみると、下のようになります。
初期投資金が100円のケース
確率変数X | 確率p | 連敗数 |
-28387.14 | 0.09242006 | 12以上 |
1.405271 | 0.02028733 | 11 |
1.410239 | 0.02474065 | 10 |
1.417838 | 0.03017152 | 9 |
1.429517 | 0.03679454 | 8 |
1.447596 | 0.04487138 | 7 |
1.475894 | 0.0547212 | 6 |
1.520974 | 0.06673317 | 5 |
1.594827 | 0.08138192 | 4 |
1.721566 | 0.09924624 | 3 |
1.957402 | 0.121032 | 2 |
2.470513 | 0.1476 | 1 |
4.1 | 0.18 | 0 |
つまり、この表を元にして期待値を定義通り計算すると、
つまり、平均で2621.494円損をすると言うのが、期待値を使った議論になると思います。
確かに計算によると明らかに儲からないです。しかし。
この計算は次の事を意味しているようです。
例えば、今ここで、単勝2番人気(的中率18%、平均オッズ4.1倍)の馬券を12レース分の予算、28387.14円を用意して12レースまでの損切りで馬法の方程式を使って100円から追い上げするとします。なお、予算は加算しませんし、何回もこの設定で追い上げを実施するとしましょう。
そうすると、全体の利益は増えたり減ったりするでしょう。そして、期待値で見ると平均で2621.494円損をする、まあ、負ける馬券購入法ではあるんですよね。
ところが。
回収率で見ると面白い現象が見ることが出来ました。
つまり、元金28387.14円で損益が−2621.494円と言う事は、全体の回収率は、
となって、何と回収率が90%超えてるんですよ(笑)。
単に、設定上の単勝2番人気の回収率を考えると、
18%×4.1倍=73.8%
なので、何と20%弱も上乗せされてるんです。正直ビックリしましたね(笑)。
この計算が正確かどうかはいまはまだ分からないんですが、これが事実だとすれば、意外とこれ以上の可能性があるのかもしれません。
取り合えず、今はモンテカルロ・シミュレーションでの追試を待ってみたいと思います。 -- 亀田? 2006-07-14 (土) 3:11:29
はい。それで構わないと思います。 -- 亀田? 2006-07-15 (土) 22:59:02
厳密に言うとそうでしょうね。ただ、初めは平均オッズ(4.1倍)で作っておいて、後でそれを平均とした正規分布に差し替えて揺らしてみたら如何でしょうか? -- 亀田? 2006-07-15 (土) 23:08:48
う〜ん・・・・・・いかん・・・・・・。
上で行った計算、どっかで間違ってますね。どこだろ・・・・・・?
まあ、検算アトで行ってみますが、10万回のモンテカルロ・シミュレーションを僕なりに行った結果、やはり定額買いの回収率と損切りで追い上げでの回収率に特に差は見られませんでした。ですから、上で行った計算はどこかで間違っているようです。
ええと、一応、馬法の方程式+損切りでのモンテカルロ・シミュレーションのコードを載せます。
僕が使った言語はVBAでは無くって、フリーの数値計算言語ソフトウェアOCTAVEと言うものです。
これもVISUAL BASICと同様のインタプリタ言語なんですが、VB等の汎用プログラミング言語と違い、変数定義等が全く必要なく、このテのシミュレーションを簡易に書けるプログラミング言語としては大変優れていると思います。他の言語に比べても素人でも扱い易いので大変便利ですね。
また、統計関数等のライブラリも豊富で、一々コチラ側で定義する必要もない、って辺りが確率を用いたシミュレーションに対しては使いやすい、って部分です。(逆に言うとこう言うのに慣れてるから、いつまで経っても僕はVB/VBAに慣れないんでしょうが・苦笑。)
逆に言うと、VB/VBAに慣れている人がコードを見れば同じインタプリタなんで、意味はすぐさま分かって移植しやすく、追試も行いやすい事と思います。
ヒロさんが競馬プログラミングに対しては慣れているらしいですが、こう言う乱数を使った統計シミュレーションは初めてのようなんで、取りあえずはコードを見てみてください。(多分、競馬予想プログラムに比べて圧倒的に簡単なんで、呆れると思います・笑)
なお、#以降はコメントです。
#馬法の方程式による損切り型/追い上げ回収率シミュレーション #使い方はmahou(シミュ回数、初期投資金、係数λ、オッズ、的中率、損切りレース #番号)で入力 #まずは関数定義 #回収率yをmahou(入力指定変数群)で定義する。 function y = mahou(n,a,lambda,odds,p,sonkiri) #初期払戻金=0円の設定 haraimodoshi = 0; #初期累積投資金=0円の設定 ruisekitoushikin = 0; #ループ開始 #シミュ回数として入力された回数までモンテカルロ計算を行う for k=1:n #的中するレース番号を生成 #乱数は一様乱数ではなく、幾何乱数を使用 #ループ内で幾何乱数を1個生成してはそれに1を加算したものを #的中レース番号とする racebango = geornd(p,1) + 1; #条件設定 #損切りとして指定されたレース番号+1未満であれば #以下の計算を行う if racebango < sonkiri + 1 #払戻金にオッズ×馬法の方程式での値を加算 #馬法の方程式は幾何乱数で生成されたレース番号を代入 haraimodoshi = haraimodoshi + odds*a*(1+lambda/(odds-1))^(racebango-1); #累積投資金には的中までに使用した金額を加算 #的中までに使用した金額は等比数列の和を利用 #等比数列の和には幾何乱数で生成されたレース番号を代入 ruisekitoushikin = ruisekitoushikin + a/lambda*(odds-1)*((1+lambda/(odds-1))^racebango-1); #条件分岐 #レース番号が損切り設定より大きかったら以下を計算 else #払戻金には0を加算 haraimodoshi = haraimodoshi; #累積投資金には等比数列の和を利用して損益を計上 #等比数列の和には指定した損切り数を代入 ruisekitoushikin = ruisekitoushikin + a/lambda*(odds-1)*((1+lambda/(odds-1))^sonkiri-1); #条件分岐終了 endif #ループ終了 endfor #回収率計算 #ループ内部で加算された払戻金と累積投資金を利用する y=haraimodoshi/ruisekitoushikin
まず、VBAとの最大の違いは、先程も書いたようにOCTAVEでは変数定義の必要性が全く無いという事です。
例えば、上ではユーザー入力として、シミュレーション回数n、初期投資金額a、馬法の方程式の係数λ、オッズ、的中率、損切りレース指定と6つ変数を使っていますが(プログラム内部にはその他の変数もあります)、VB/VBAと違って、別にinteger型であるとか、float型であるとか、そう言う定義を一切行っておりません。
従って、VB/VBAに移植する際は、細かに変数宣言をしたほうが良いとは思います。
また、上のプログラム上では、乱数として、幾何分布から取り出した幾何乱数を用いています。
幾何乱数とはその名の通り、幾何分布から取り出した確率変数の値で、その値は0〜∞の値を取る正の整数です。これはOCTAVEの統計ライブラリにありました。
つまり考え方はこうです。
今、一日12レース単位の無限大規模の母集団があって、そこから12レース単位で1日取り出します。計算上はその中で第1レースが単勝x番人気の出現してる日がp%。第2レースで単勝x番人気が出現している日がpq%・・・・・、等とその存在確率は幾何分布に従っているとします。
そうすると、第yレース目で単勝x番人気が出現する特定の日には、既にセットでいくら投資金がかかって、いくら払い戻されるのか、既に数学的には厳密に決まっているわけですね。この考え方を利用すれば幾分コードがシンプルになるわけです。かつ、「10万レースをシミュレーション」と指定した場合でも、レース単位で10万回ではなく、開催日単位で10万回と言う、もっと大規模なモンテカルロを行える、と言った利点があります。
ただし、おそらくVB/VBAには「幾何乱数」と言ったライブラリはない、と想像しますので、これは別にVB/VBAで一様乱数を使って定義したほうが良いと思います。それを本体の馬法の方程式のシミュレーションで呼び出す形にすれば宜しいのではないでしょうか? -- 亀田? 2006-07-17 (月) 03:51:54
>HRPTV5Cさん
人気とオッズとの関係は、単純でオッズの低いものから順番と言う意味しか ありません。従いまして2番人気、平均オッズ4.1倍、的中率18%と言う組み合わせが 妥当であるか一考の余地があるような気がします。
仰るとおりだと僕も思います。
ただ、今回のこのシミュレーションの文脈ですと、
がトピックなんで、元々単勝2番人気平均オッズ4.1倍、的中率18%の厳密性に関しては
そこまで神経質にならなくてもいいような気がします。
単に、増額投資実行者が単勝2番人気を使った追い上げが好きだ、と言う例が多いだけなんで、取り上げただけなんです。 -- 亀田? 2006-07-17 (月) 05:13:03
まずは用語の整理。
投資競馬で言う「モンテカルロ法」と言えば、通常「数列を使った追い上げ法」の一種の事を指します。
ところが、Googleで検索してみれば分かりますが、通常、統計学で言うモンテカルロ法とは、乱数を使ったコンピュータ・シミュレーションの事を指します。
これはあの忌まわしい原爆製造実験、マンハッタン計画の時、数学者であり、また、コンピュータの父でもあるフォン・ノイマン博士が、ウランや中性子の振る舞いを量子力学的に直接計算せずに、大型コンピュータで乱数を使って予測した方法論に由来します。
現在もこのモンテカルロ法は数学的に積分を求めるのが困難な場合等に数値演算法として数々の場所で愛用されているようです。
>HRPTV5Cさん
>まずは一様乱数から幾何乱数(幾何分布)が求められるか試して見たいですね。
OCTAVEでは内部での幾何乱数の定義は以下のようになっている模様です。(こうやって、内部定義のコードを全部見ることが出来る辺りが、オープンソースのフリーソフトウェアの便利な所です。)
function rnd = geornd (p, r, c) if (nargin == 3) if (! (isscalar (r) && (r > 0) && (r == round (r)))) error ("geornd: r must be a positive integer"); endif if (! (isscalar (c) && (c > 0) && (c == round (c)))) error ("geornd: c must be a positive integer"); endif sz = [r, c]; if (any (size (p) != 1) && ((length (size (p)) != length (sz)) || any (size (p) != sz))) error ("geornd: p must be scalar or of size [r, c]"); endif elseif (nargin == 2) if (isscalar (r) && (r > 0)) sz = [r, r]; elseif (isvector(r) && all (r > 0)) sz = r(:)'; else error ("geornd: r must be a postive integer or vector"); endif if (any (size (p) != 1) && ((length (size (p)) != length (sz)) || any (size (p) != sz))) error ("geornd: n must be scalar or of size sz"); endif elseif (nargin == 1) sz = size(n); elseif (nargin != 1) usage ("geornd (p, r, c)"); endif if (isscalar (p)) if (!(p >= 0) || !(p <= 1)) rnd = NaN * ones (sz); elseif (p == 0) rnd = Inf * ones (sz); elseif ((p > 0) & (p < 1)); rnd = floor (log (rand (sz)) / log (1 - p)); else rnd = zeros (sz); endif else rnd = zeros (sz); k = find (!(p >= 0) | !(p <= 1)); if (any (k)) rnd(k) = NaN * ones (1, length (k)); endif k = find (p == 0); if (any (k)) rnd(k) = Inf * ones (1, length (k)); endif k = find ((p > 0) & (p < 1)); if (any (k)) rnd(k) = floor (log (rand (size (k))) ./ log (1 - p(k))); endif endif endfunction
>馬法の方程式は現時点での結論では必負法となるのでしょうか?
はい。残念ながらどうやらそのようです。
ただし、資金が豊潤にあったら、別に損切りする必要性が生じないので、その限りではないとは思います。
>むーてんさん
>ここまでくると凡人、一競馬バカ親父には難しすぎてついていけない話になってます。
いやいや、単にプログラム言語の話がちょっと出てきただけなんで、プログラム未経験者には難しい、ってだけですよ。僕もそんなにコンピュータ・プログラムの事は分かりません。単にOCTAVEが易しかったからたまたまコードを書けただけで、汎用の言語(例えばCとかVisual Basic)を使いこなせるか、と言うといまだ丸っきり理解の範疇外です(苦笑)。
>損切りについてですが、ここでの議論はたとえば12R連続はずしたとき、それまでの損失はあきらめて次からまた一からやり直しですか。
はい。そのシミュレーションですね。
>投資競馬協会のゴールデンルールだったかな、1日前に1回も2番人気が出なければ次の日には出る率は高いから狙え、とかいったものがあります。こういう出現頻度のゆらぎみたいなものをかなりの確率で予見できれば、追い上げも少しはリスクが少なくなるのではと思いますが、いかがでしょう?。
ゴールドラッシュ法の事ですね。
前日の出現動向からある程度の出現頻度の予測は可能だと僕も考えています。ただし、日本競馬投資協会の方法論はオーソドックスな統計学的方法論には従ってはいません。
つまり、正式な統計学的手法で、出現頻度の変動の予測は理論的には可能だと思います、が、しかしそれは、思わぬ結果を見ることになるでしょう。
この話は別のページを作ってそこで議論しましょう。
>HRPTV5Cさん
>馬券には100円未満の単位は有りませんので、切り上げるか切り捨てるどちらかですが、どうも2回目切り上げ、3回連続以降は切り捨てになっているようですが、どうでしょうか?
上で僕が書いたコードでは特に四捨五入はしませんでした。
と言うのも理論面では、別に馬券の最小購入額に縛られる必要はない、と判断したからです。
ただ、もっと現実に即したプログラムをと言った向きもあるでしょうから、その場合、エクセル関数で言うところのROUNDUP関数を用いて、100円未満を切り上げればよいと思います。 -- 亀田? 2006-07-17 (月) 16:35:00
>エクセルですが、18%の事象をRAND()で実際に発生させて見ましたが、驚くほどゆれますね。
そうです。実際驚くほど揺れます。
良く、自分の馬券の的中率はx%くらいある、けど最近スランプなんだよなあ、等と言う会話を良く聞きますが、統計学的な解釈ではスランプはあって当たり前だと言う事ですよね。なんせ、定数である筈の母比率があったにしても、シミュレーションによる実験結果ですと、大きく結果が揺らぐのは当たり前だからです。
そのテの理論と実践の面に関しての整合性に関する実感でも、乱数を利用したモンテカルロ・シミュレーションは凄く役立つ事と思います。 -- 亀田? 2006-07-17 (月) 23:12:35
>ヒロさん
遅レスですみません。
その話は別のページで行ってみようと考えています。
>HRPTV5Cさん
それは素晴らしいです。是非とも拝見したいです。
VBAのコードの勉強もしたいんですが、コードも見る事が出来ますか? -- 亀田? 2006-07-18 (火) 22:04:22
>HRPTV5Cさん
拝見させていただきました。
ブログをリンクさせて頂きますね。
>K列全体をコピー、ペーストを繰り返して見て下さい。
単にF9キーを押せば再計算されるようです。 -- 亀田? 2006-07-19 (水) 02:33:22
>HRPTV5Cさん
VB6でのモンテカルロ・シミュレータと言うのは楽しみですね。期待しています。-- 亀田? 2006-07-20 (木) 03:49:29