2chのスレをテキストマイニングするやり方

公開日: : 中級者EA開発 ,

よく「大衆の逆をいけば勝てる」みたいなことが相場の世界では言われますよね。今回は2chの市況版の住民の悲鳴を取得し、その逆張りをするシステムを考えてみたいと思います。

(正直、これで本当に勝てるとは思ってないです。ただの実験です)

テキストマイニング、スクレイピングというと一見難しいように感じますが、実は操作自体は意外と簡単です。

難しいのはテキストの”あいまいさ”をどう読み解くかを判定するところですが、
今回はシンプルにいきたいと思います。

つまり、強気な単語「買」、「ロング」、「ロンガー」、「ホールド」、「ホールダー」、「上昇」、「暴騰」
弱気な単語「売」、「ショート」、「ショーター」、「ショタ」、「下降」、「下落」、「暴落」、「ナイアガラ」
と否定語「ない」
を判定に使います。

実装方法はPHPのスクレイピング専用ライブラリを使います。
PHPの世界では有名な「PHP Simple HTML DOM Parser」というのがあるので、
いつも通り、これを使います。

スレのターゲットは「【USD/JPY】ドル円専用スレ」です。
(数年前に見たときはもっと荒れてるスレだったような気がするのですが、最近は意外とまともな感じですね)

スクレイピングのライブラリは1ファイルのPHPなので、

同じディレクトリに配置して、呼び出せばOKです。

あとは

 

find関数を使って、ループさせながら該当ワードを探していくだけです。

強気な単語は$bullとし、弱気な単語は$bearとして
該当ワードがヒットすればそれぞれ0から加算していきます。

 

あとはそれぞれの合計を比較するだけです。

否定語を入れたい場合は、もう一段階if文を入れて、”ない”があれば逆向きの判定すれば
とりあえずは良いんじゃないでしょうか。

ちなみに2chは一応htmlソースが難読化処理されていますが、
htmlの構成なんてどこも似たり寄ったりなので、簡単に突破できます。

ちなみにbody以下のそれぞれのdivは

 

こんな感じです。やっぱり古いサイトだけあって構成が読みやすいですね。

結果は、
強気ワード:22
弱気ワード:8
で全体的に強気みたいです。(ちなみに計測時のスレは670前後まで伸びていた状態です。)

大衆が強気なら売りでいった方がいいんでしょうか。
結局良く分からないです。

この優位性を確かめるには過去スレとメタトレーダーのストラテジーテスターを使って
過去検証をすることも可能です。

リアルタイムで自動売買する方向と
過去検証する方向で
開発する内容が比較的変わってくるので、どちらかに絞ってから開発を始めた方がよさそうです。

リアルタイムで叩く場合は、スレが変わった際にURLも変わるので、
スレ一覧から新しいスレを取得するクローリングも必要です。

過去検証する場合は、比較的手動の作業が増えるのでやる気と馬力が必要ですね。
(過去ログを集めるのとか)

この投稿は役に立ちましたか? 役に立った 役に立たなかった 3 人中 2 人がこの 投稿 は役に立ったと言っています。

関連記事

[MT4]EAに口座縛り/期間限定縛りをかける種類と方法(MT5)

良いEAができた場合、身内で配布したい場合があります。しかし、知らない間に自分のEAが出回っていた場

記事を読む

MT4EAを実際にデコンパイルしてみて、対策を考える

逆コンパイルとは 逆コンパイルというのは実行ファイルからソースコードファイルを復元することで、デコ

記事を読む

(MQL4)WEBサイトの情報を取得するやり方[EA]WebRequest

MT4のチャート上にWEBサイトの情報を参照する方法について紹介します。   背景

記事を読む

利用可能なトレード系金融APIまとめ FIX API,REST API,OPEN API

今まで当たり前のようにMT4/MT5/TradeStationで開発をしてきましたが、そういえばAP

記事を読む

[MT4]チャートを分析して、一番多いパターンが来たらトレードするEA

パターン分析トレードとは 今回はMT4のファイル関数を使って、パターン分析トレードシステムを作成し

記事を読む

 

Translate »
上に戻る