OmegaChartスレ ver.10 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
会則 @OmegaChartはサポートを終了しています。 ご自身でコンパイルできない方は、他のソフトを利用して下さい。 A連投で初歩的な質問をする人やクレクレ君は、立ち入り禁止。 ●公式サイト OmegaChart公式HP(閉鎖) ttp://www.omegachart.org/ OmegaChart公式HPのアーカイブ(消滅) ttp://web.archive.org/web/20131010105520/http://www.omegachart.org/ メーリングリスト(2014年5月28日で終了) ttp://groups.yahoo.co.jp/group/omegachart/ 作者Blog(サポート終了) ttp://okajima.air-nifty.com/ ●有志による維持活動 panacoran氏のサイト ttp://sourceforge.jp/users/panacoran/pf/OmegaChart/wiki/FrontPage ●前スレ OmegaChartスレ ver.9 http://potato.2ch.net/test/read.cgi/software/1423093067.html RECORD_LENGTH * 10 にして走らせてみたら、再現しました。配列なんちゃらはこれっぽい。 後はオブジェクト参照のほうか。 tacticoでデータゲットから今日のデータがダウンロードできないんだけど俺だけ? Z20180116.zip is not a valid zip fileと出る Tactico はどうも分からんが先のオブジェクト参照エラー 関係あるとすれば ・データダウンロード開始時間の変更 ・データダウンロード遡及期間を変更する ・超ロングデータをオメガチャートで表示する場合 等の対処がされているかどうかだと思うが これに対処するにはOmegaWikiを見れば良い しかし そもそも時間帯を無視して のべつまくなしにダウンロードはしていないのかな 今日2日分ダウンロードしたらできました 昨日なぜできなかったかは不明 >>424 のコードが、なぜか株価が置いてあるサイトのURL変更が変更になったのでそれに合わせて、>>424 のコードを書き直したのですが private Dictionary<int, NewDailyData> FillData(int date) { var result = new Dictionary<int, NewDailyData>(); var d2 = Util.IntToDate(date); var url = string.Format("http://datadownload.php.xdomain.jp/data/daily/ {0:D8}.txt", date); の var url = string.Format("http://datadownload.php.xdomain.jp/data/daily/ {0:D8}.txt", date); を var url = string.Format("http://datadownload.php.xdomain.jp/data/daily/ {0:yyyy}/{0:D8}.txt", date); のように変更したのですが、なぜかうまくいきません{0:yyyy} 424 名無しさん@お腹いっぱい。 sage ▼ 2017/12/14(木) 19:29:38.12 ID:pGW7Xpd10 [3回目] >>423 OmegaChart 株価がなぜか置いてあるサイトから株価取得 https://osdn.net/users/omegachartuser/pastebin/5733 株価がなぜか置いてあるサイトから株価をダウンロードしてオメガチャートのデータファイルを作るサンプルコードです。 (※303 ※313-316 ※320 ※330 などが参考) 株価がなぜか置いてあるサイトの一番古いデータは2017/12/7、2017/12/14から出来なかった銘柄情報も追加という仕様変更あり。 522 名無しさん@お腹いっぱい。 sage ▼ 2018/01/05(金) 06:55:03.53 ID:NBcArPw60 [1回目] >>382 >>423 >>424 OmegaChart 株価がなぜか置いてあるサイト、フォルダ構成変更 以前:http://datadownload.php.xdomain.jp/data/daily/20171214.txt 以降:http://datadownload.php.xdomain.jp/data/daily/2017/20171214.txt (557は推敲途中で投稿してしまったので再投稿です。) なぜか株価が置いてあるサイトのURL変更が変更になった(>>522 )のでそれに合わせて、>>424 のコードを書き直したのですが private Dictionary<int, NewDailyData> FillData(int date) { var result = new Dictionary<int, NewDailyData>(); var d2 = Util.IntToDate(date); var url = string.Format("http://datadownload.php.xdomain.jp/data/daily/ {0:D8}.txt", date); の var url = string.Format("http://datadownload.php.xdomain.jp/data/daily/ {0:D8}.txt", date); を var url = string.Format("http://datadownload.php.xdomain.jp/data/daily/ {0:yyyy}/{0:D8}.txt", date); のように変更したのですが、なぜかうまくいきません {0:yyyy}で年を取得するところがうまくいっていないのでしょうか? >>558 >{0:yyyy}で年を取得するところがうまくいっていないのでしょうか? そこですね。dateはint型で、d2がdate型なので、{0:yyyy}/{1:D8}.txt", d2, date); とすれば良いと思います。 ブレークポイントは、設定(コードの画面の左枠をクリックすると丸印が出る)すると、プログラムを走らせてその丸印の行に差し掛かったときにプログラムが止まる仕組みです。 止まったときにその変数に何が入ったかを確認できます。今回もその確認をすれば、urlが思った通りのものになったかを確認できたと思います。 1行ずつ実行するにはF11ボタン押下です。 それよりもそのコードはまずいバグがありました。 shiftで10倍にしてるんですが、元データがすでに10倍にしてあるのに、さらに10倍になってる。 shift = 1 にするか、shiftのくだりを全部削除する必要があります。 var shift = 10; これを var shift = 1; へ修正するのが一番簡単そうです。 >>559 どうもありがとうございます! データを取得することができました。 OmegaChart のデータソース問題は昨年の k-db閉鎖で続いているが 今後 Yahooが本気で締め上げを図れば 困った事になる その対策として このスレでも色々とあるみたいだが 正直k-dbの代替としては今いちだね 当方通常は、国内指数(日経225,TOPIX,JQ指数,JPX400)を○探から補填しているが いざという場合に備えて 個別株も取得できる様にしている それで気づいたのだが ここはなかなか具合が良くてある意味 Yahooにも 匹敵するお薦めのサイトの様な気がしてきた(時系列データの期間が短いのは我慢 先物も見当たらないが) 国内指数類は殆ど揃っていて出来高も取れるし 為替も取れる 個別株は札証や福証を含めてYahooなみに ダウンロードできる(データは2年分位かな)各種ランキングも結構配慮が行き届いて充実していると思う サイトポリシーとして利用者の私的利用のみを目的に情報提供を行っており、転用、複製、加工、再配信、 販売等の迷惑行為がなければスクレイプは許されそうだ(株○さんにとってはサーバー負荷増で迷惑かも) こういうところは殆どないので非常に貴重だと思う k-dbの代わりとして使えそうだ そこで株探をYahooの予備的な代替ソースとして統一的にRanking等の表示も含めて標準化したら良いのでは こちとらは こっそりと別プログラムを実行中なので困ってはないが C#は苦手で いまさら面倒で ;^ω^) OmegaChartの維持とユーザーのためにも誰かにやって貰えるとありがたい 取りあえず情報提供と提案まで あ、株探にも時系列があったんですね。毎日見てるのに気づかなかったという。 今現在土曜日10時過ぎですが、まだ昨日の株価が反映されてないんですね。 銘柄のラインナップには申し分ないですが、ちょっと厳しいかなぁ。 サンプルコード提示は時間が出来次第やってみます。 当日分は上の方に表示されていますね更新は結構速いですよ 兎も角宜しくお願いします 株探では、分割した銘柄の株価は修正後の値段でさかのぼって表示されていませんか? こもりばんが有料になるぽいけど、こもりばんから個別株の時系列データ取得できるようになるならデータ問題は改善するのではないかと思う 株探、「サーバーを使用できません」っていうエラーが頻発しますね。Yahoo.csをお手本に作ったものだと取れないですね。 >>561 >>567 自分のIPが規制されでもしたら困るんでサンプルコード提示は中止します。すいません。 株価データ取得は、楽天RSS、トレードステーション、ヤフーの企業運営のネタ元が安定してますね。 こもりばんさんも企業運営のネタ元なので、これを加えれば盤石。 >>568 サーバーエラーですか こちらは普通に取れてます お手数でした >>569 サーバーエラーにはたまになりますが、データは取れるんで参考になるようでしたら、どうぞ。 Kabutan.cs ttps://osdn.net/users/omegachartuser/pastebin/5769 >>570 実は Regxでのデータの切り出し方が鬱陶しかったので放っていましたが これで理解できました 後は少しずつゆっくりやれば何とかなりそうです どうもありがとうございました >>569 >>570 株探はYahooファイナンスよりサーバーの処理能力が高くない感じがするから >>282 に書いてある位置でSleepを入れたほうがいいよ。 スレッド2つで取得しているみたいだからGetPageメソッド実行の度に500〜1000ミリ秒くらいSleepさせるとエラーが出なくなる。 というかYahooが処理できるからってSleep無しで処理しているのは行儀悪いと思う。 サーバー負荷が高い処理を意図的に実行するのだから行儀良くやろうよ。サービス停止やBANされたくないでしょ? ま、人力で頑張れるくらいの速さでクロールするのがマナーですわな マルチスレッドはやめた方がいいです var threads = new Thread[2]; を var threads = new Thread[1]; にするとシングルスレッドになります 適宜スリープも入れたほうがいいですね そういえば株探は分割併合があると株価を遡及して修正した値で掲載するけど 出来高は未修正で掲載するから利用するときは注意が必要。 あれ?今確認したら出来高も修正されてた。以前に確認した時は未修正だった覚えがあるのだけど。タイミングの問題? すみません、>>575 は誤情報です。 >>572 ,574 ユーザーは Kabutan.csやYahoo.csを使う場合は、当該ソースのRunFetchPrices()の while文の先頭にスレッドsleepを入れる等して再ビルドした方が良いという事ですね >>570 諸先輩方からのアドバイスに従い、修正版です。 OmegaChart かぶたんから株価取得 Kabutan.cs ttps://osdn.net/users/omegachartuser/pastebin/5770 処理時間は自分の環境で70分くらい。1スレッド、1000msSleep()です。 探したらJasdaq指数もあったので追加しました。 ついでに自分が把握しているYahoo.csのバグを開示しておくよ。 マルチスレッドでスリープなしで取ると、index.txtで最後に記載されている銘柄のデータが取れてないことがある。というか、ほぼ毎回取れてなかった。 >>574 のとおりシングルスレッドにすると取れていないことがないので、マルチスレッドでのデキューのタイミングの問題だと思う。CPUの処理能力依存もあるかな? >>282 の位置で1000ミル秒のスリープを入れると発生しなくなるのでマナー的にもバグ対処的にもSleepを入れることを推奨します。出来ればシングルスレッドでゆるゆる取りましょう。 >>578 なんか書いてる間に修正版をアップしていただけたようで、ありがとうございます。 個人的にはデキューにバグがあると認識しているのでGetPageメソッド内よりもRunFetchPricesメソッドの以下にSleepを入れたほうが良いと思います。 try { while (true) { → Thread.Sleep(1000); lock (_syncObject) >>579 CPU i3でヤフーからデータ取得した場合、自分の環境だと9997の取得失敗になることはないようです Kabutan.cs直近30日内ぐらいで分割した銘柄が表示おかしいような気がする 少し書いとくと 1435 1764 1788 2311 2882 3088 〜〜 9417 9622 9729 9757 計40銘柄くらい うちだけかな >>581 確認ありがとうございます。私はi5ですがYahoo.csオリジナルのままだとほぼ漏れます。やはり環境依存なんですかね。 まあ、>>572 に書いたとおりマナー良くSleepを入れてゆるゆる取ることを個人的には推奨します。 >>582 Kabutanから取れるのは修正後データなので、修正後データに対して更に分割しちゃってるんじゃないですかね? 自分が調べた限りだと、修正前の時系列データ提供していてヤフー以外に信頼がおけそうなのは日経だった ただ時系列データが1月分くらいになる Protraで2012-05-16の株価データが欠損していることを確認したので報告。 もしProtraのデータをコンバートして使っている人は当たり前だけど欠損しているから気を付けて。 Investing.comって情報がプログラムからは取れなくなってる? Agentをごにょごにょするだけで取れた。失礼しました。 日経から取ってみた内容は良いが時系列更新が夜の8時過ぎ頃でそこが難点か 日経は時系列データの年月日の表示が、年なし日付+曜日になっていてそこが苦戦しているのですがどうやってコード書きました?よろしければ教えていただけると幸いです。 (別人です) システム日付の年度yyyyを強制連結して日付化、もしシステム日付よりも大きかったら、去年の日付のはずだとすればどうですか。 >>592 手軽に WebQuery でデータ取っているだけだから多分ご期待にそえないと思うが 時系列のページで 'tr:nth-child(2) td' やってるだけ これで日経もYahooもOK OmegaChartからでなく ショートカットのデータ取得 手抜きですまん >>593 ありがとうございます。挑戦してみます。 >>594 それは失礼いたしました。 >>535 OmegaChart Fibonacciリトレースメント Fibonacci.cs 新規追加 ※差し替え その3 https://osdn.net/users/omegachartuser/pastebin/5775 分割考慮してなかったので修正。farm.CalcSplitRatio(日付)で分割比率取得して掛け合わせた。 >>596 ありがとうございます 早速試してみます このスレにペラペラ書かない方がいいぞ データを無断ダウンロードしてる輩がいるって サイトにこのURL付きで通報しまくってるからな おまえも使えなくなるで 暇になると出てくるんだよね うんこ 虫 うんこ無視 こもりばんさんのKABU+の利用を考えている方おられますか? >>604 Standardコースを取ろうと思っております。 タイミング的に今回も底で損確して憂さ晴らしなんだろうなあ ksの行動は解りやすい、そんなことをしても金は戻ってこないのに >>320 KABU+(こもりばん氏サイト)から株価取得するサンプルコードです。 https://osdn.net/users/omegachartuser/pastebin/5777 DownloadOrder.csからこのコードを呼び出す変更が必要です。 Standardコースで1時間当たり4アクセス制限があり、指定日分の1日分しか取れません。 このサイトは有料サイトです。(Standardコースで1か月1000円くらい。) 契約するともらえるIDとパスワードをこのサンプルコードではコードに直接書き込み方式になっています。 適宜書き換えをお願いします。 株価だけではなくて、時価総額や決算データ、PERなど投資指標、浮動株比率、日証金、信用取引残高などあります。 >>609 先物もありました。昼と夜は別の日付名ファイルに分かれていて、各種先物と限月の日足4本値。分足はなし。 Light(2回/1時間)じゃダメなんだね。株式とETF,REIT,FUNDはファイル一緒にすればいいのに >>611 どうもありがとうございます >>612 接続回数制限が厳しめでちょっと困ってしまいますね・・・ ひと月分くらい過去のデータが一気に取れるとよいのですが ただ、RSSなどと違い、過去データにもアクセスできるのでそのアドバンテージはありますね。 ファイルのダウンロードだけを毎日やっておいて、OmegaChartの更新はそのダウンロードフォルダを見に行くようにするとか。 個別銘柄の時価総額が同じファイルで取れるようになったのは自分にとって大きいですね。 >>570 今頃であれですが株探でエラー出まくりと言うのは取れない銘柄があったらそこで死んでるだけでは? 取れなくても無視して次の銘柄を取りに行くようにすればけば良いような気がしますが どうでしょう >>615 ありがとうございます。原因としては、マルチスレッドで頻繁にアクセスすることじゃないかということになりまして、 1銘柄ずつ処理する、かつ適当に時間を置くという対処がいいだろうということになりました。 >>616 そうでしたか しかしダウンロードの状況を見ると例えば 1676がindexにあるとこれは取引が寂しくて 殆どデータが無い状態のページを読み込むとそこで死んでしまうためエラーがでていると思うのですが これをスキップすればエラーは減るのではないでしょうか? >>617 その銘柄も株価記載はなくてもページ自体はありますので、他の例えば、ソフトバンク等とも、プログラム的には扱いは同じですね。 今年の新規上場銘柄をまとめてindexファイルへ追加して過去DATAをYahooモードで追記したら、 取引のない上場日前の日付DATAとして0値が追記されるんですね。 知らんかった 書き込むときのチェックが _farm==null だったら処理しないってだけだから、そうなりますね。 _farmがnull または (ファイルが存在しない、かつ出来高ゼロ) ならば処理しない これならば、その問題はなくなるんじゃないですかね。 これって上場以来または長期間 出来高の無い銘柄ではスクリーニングもだけどデータ取得も失敗するって事だよね そうするとソースの維持にもかかわってきそうだけどData.csの修正それとも取得元.cs どちらの修正になるのかな それは問題なしと思います。出来高がない銘柄は前日終値埋めされて表示されるので。 Yahooモード、2018/03/05のDATAがおかしいなと思ったら Yahooの不具合が発生してますね。 >>625 どんな感じでおかしいですか? 出先でオメガ見れなくて、帰ってから見たいと思うので よければ教えてください ほんとだ。全体的に誤値が非常に多かったみたい。 Yahoo比較対象がRSS、TradeStation、Kabu+で、基本的にRSS、TS、Kabu+は同じ値で、Yahooだけ違ったのが、始値259件、高値46件、安値271件、終値2696件 >>627 >始値259件、高値46件、安値271件、終値2696件 ミス。始値は0件。 ヤフー時系列、今時点では直ってるようです。再走行させればOK。 そういえば昨日の朝方は、楽天RSSも一部銘柄で値段がおかしなことになっていましたね そうなんですか。朝はRSSを使わないので気づきませんでした。 RSSといえばオープンオフィスのカルクを使ってリアルタイムの持ち株の時価表示 損益・平均単価等々を三画面の隅に小さく表示 =DDE("RSS";"1570.T";"現在値") エクセルはタスクスケジューラで場中に仕事をさせているのでこれは使えない Omegaでできること・・今買い時の某銘柄 それは株チャートソフトの限界・・買い時売り時は示すが 最良の安全投機である「時間分散」買い・同返済売りには対応していない Omegaが使えないのではなく限界があるということ 自分がオメガチャートに期待してるのは、日々変わっていく株価を確認することだけですね。 数百銘柄みることもあるので、数字を入力して銘柄遷移するの大変なのでそこは改造しました。 今後は、日足と週足の同時、もしくは連動表示を実現したいですね。一つのオメガでやるほうがいいのか、二つのオメガを連動させてやるのがいいのか。 あと、画面の描画をPointからPointFに変えたいですね。オメガチャートはトレンドラインがきれいに引けないという話をする人もいるそうですから。 >>635 私もそういう使い方です。トレンドライン引きまくって全セクター監視で300銘柄。 ダウンロードで出来高が無い等々で取得エラーが出る場合の処理ですが エラーメッセージがでるのは全銘柄の取得処理が終わった後でしょうか それとも取得出来なかった時点ですぐ処理を終了しているのでしょうか 後者なら未処理の銘柄の取得処理を継続するための方法はありますか? >>622 の意見についてのお話でしたら、データ取得では失敗しません。この意見の大元は>>619 だと思いますが、これはIPO上場前にindex.txtに銘柄情報を書き込むとゼロ埋めされたレコードが出来上がるという話でありました。 出来高がない日々データに関しては出来高なしとして取り込まれますが、オメガチャート上で表示されるときに、過去最後に出来高を付けた終値で統一されるのでエラーとはなりません。 ということで、ご懸念のエラーメッセージは出ません。繰り返しますが、出来高ゼロのレコードとして記録され、チャート表示するときは最後に記録された終値で埋められます。 ソースを見ると○フーも○探も殆ど同じでエラーが出るのはおかしいでしょうが実際には ○探ではETFの1672から1697で出来高が無い場合"ページから株価を取得できません"の エラーが出て止まりますので他にも似たような書き込みがありましたがこれが不思議で つい書き込みました申し訳ありません 今はindex.txtから該当のETF銘柄を削除しています 出来高ゼロの場合、直近終値を書き込むのがデフォルトになってるのが諸悪の根源。 >>641 株探で試したんですけど、エラー出ました。バグですね。ちょっと見てみます。 >>644 OmegaChart かぶたんから株価取得 Kabutan.cs 差し替え その1 https://osdn.net/users/omegachartuser/pastebin/5797 高値とか安値に全角文字"−"が入っていたためにMatchせずエラーに分類されてました。 データ・ダウンロードの指定日を指定する意味がなかったのを直しました。 銘柄の選別と値動きの監視が一番大事で そのためにオメガは非常に役に立つと思うが 実際の所 監視銘柄の更新はどれ位の頻度でやっているんだろうか 自分は値上がり率、 出来高、売買代金の上位から出現頻度を目安に 300銘柄を機械的に選び出しているが 正直、毎日これをやるのはうんざりで終いにゃ収拾がつかなくなるがやらないと心配だ ストラテジーに関するアイデアはスレ違いでしょうけど、 ヤフーモードの上場日前も0値埋め仕様は、自分には悩ましい大問題です。 それを監視するために2016年〜現在までのIPO銘柄フォルダを作って登録ますたわ。 うっかりやっちまったときのためにw Yahooモード、廃止銘柄もindexファイルに残していると0値埋めですね。 都合良く0値埋めを活かすには、どうしようかな困った。 >>650 あ、廃止銘柄はOBS処理してれば助かるんですね。 OBS処理してない自分はエライ事になってますけど。 自分はSBI証券の口座を持っているので、時系列ファイル出力機能を使ってCSVを出力。このCSVをドロップするとデータファイル再作成する機能を作りました。 ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる