OmegaChartスレ ver.11

■ このスレッドは過去ログ倉庫に格納されています
2018/10/12(金) 16:06:42.77ID:xz6O6ruA0
会則
@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.10
https://egg.5ch.net/test/read.cgi/software/1488866170/
2018/11/01(木) 22:08:59.01ID:nVuliuB10
>>63
なるほどです。
ただですね、トレステのCSVは同一コード複数市場ですけど、同じ銘柄コードがあったら出来高が多い方を取り込む仕様にしたら、index.txt関係なしにデータファイルを作ってしまえばいいと思うんですよね。
まあ、おいおい、やっていきましょうか。
65名無しさん@お腹いっぱい。
垢版 |
2018/11/05(月) 22:49:43.12ID:WJLfJXDf0
DownloadOrder.csの、


case StockDataSource.Edatalab:
stock_ds = new Specialized.EdatalabDataSource(_dateArray);
break;
case StockDataSource.KabuPlus:
stock_ds = new Specialized.KabuPlusDataSource(_dateArray);
break;
case StockDataSource.RakutenRss:
stock_ds = new Specialized.RakutenRssDataSource(_dateArray);


を書き加えてビルドすると、

1>------ ビルド開始: プロジェクト: zanetti, 構成: Release Any CPU ------
1>C:\Users\neko\Downloads\新しいフォルダー\RakutenRss\OmegaChart-2f2419d\DownloadOrder.cs(183,47,183,67): error CS0234: 型
または名前空間の名前 'RakutenRssDataSource' が名前空間 'Zanetti.DataSource.Specialized' に存在しません (アセンブリ参照があることを確認してください)。
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========

となってエラーが出て、


RakutenRssDataSource(_dateArray);を EdatalabDataSource(_dateArray); に書き換えてビルドすると、正常にビルド完了できるんですが、これは何の参照が足りないんでしょうか?

因みに、KABU+のみ加えたときは、KabuPlusDataSource(_dateArray);のままで、ビルドできます。
2018/11/06(火) 00:38:14.45ID:QwEXVMPu0
>>65
DownloadOrder.csのpublic enum StockDataSource
ここに「RakutenRss」とか「KabuPlus」を追加すれば行けると思います。
Kabu+が上手くいくのは、すでにStockDataSourceに「KabuPlus」の設定がなされているからじゃないでしょうか。

デバッグするコツ、というか第一歩は、どこでエラーになっているかを見ることだと思います。
VisualStudioC#でエラーとなるコードがあると、そのエラーになっているコードに波線が引かれますね。
今回のケースだと、
case StockDataSource.RakutenRss: の「RakutenRss」の部分に波線が引かれてエラーであることを知らせてくれています。

Specializedには波線がありません。Specializedの部分にカーソルを合わせると、「enum」なんちゃらであることを知らせてくれます。
enumというのは、例えばこんなイメージのものです。

enum 市場
{
東一,
東二,
マザーズ,
ジャスダック
}

呼び出し方はこうです→市場.マザーズ

よって、今回のエラーは、enum市場に名証を含めていなかったのに、名証を設定していたかのように呼び出してしまい「市場.名証」エラーとなった
という感じです。
67名無しさん@お腹いっぱい。
垢版 |
2018/11/06(火) 15:18:04.53ID:1whFSTew0
>>66
ありがとうございます。
その部分はこのようにちゃんと入れてます。何が悪いのかさっぱり分かりません。

KABU+は、選択するとダウンロード始まるんですが、お金払わなくてもいいんでしょうか?

//何をダウンロードするかの設定
internal class DownloadOrder
{
public enum StockDownload {
None, //ダウンロードしない
All, //全部
Bookmark, //ブックマーク内の銘柄のみ
Recent, //最近の日付のみ
SingleBrand //1銘柄
}

public enum StockDataSource
{
Mujinzou,
KdbCom,
Yahoo,
Edatalab,
KabuPlus,
RakutenRss
}

static public string[] StockDataSourceNames
{
get { return new[] {"無尽蔵", "k-db.com", "Yahoo時系列", "edatalab.net", "KabuPlus", "RakutenRss"}; }
}
68名無しさん@お腹いっぱい。
垢版 |
2018/11/06(火) 15:19:33.15ID:1whFSTew0
あと、使ったのはVisual Studio2017です。
69名無しさん@お腹いっぱい。
垢版 |
2018/11/06(火) 15:48:11.42ID:1whFSTew0
因みに株価10倍のバージョンではなく、オリジナルのソースでコンパイルしてますが、何か違いがあるでしょうか?
2018/11/06(火) 20:57:28.11ID:QwEXVMPu0
>>67
思い出しました。ユーザーさんに間違いを指摘されてたんですが、被害者が出てしまいました。
これが楽天RSSから情報取得するサンプルコードですが、一番上をみてください。
https://osdn.net/users/omegachartuser/pastebin/5673
「RakuteRssDataSource」 Rakuten じゃなくて、 Rakute になっています。

コンパイルが通らないときは、こういうしょうもない間違いもあることをお見知りおきください。
2018/11/07(水) 12:24:49.37ID:U93eR6gY0
どうもありがとうございます
72名無しさん@お腹いっぱい。
垢版 |
2018/11/07(水) 15:27:11.09ID:xQxWmgGj0
>>70
330名無しさん@お腹いっぱい。2017/11/23(木) 15:15:48.76ID:W0e0qPes0>>331
>>329
お疲れ様です。
貴殿がどのようなコードを書いたのかわからないのでちょっと判断がつかないですね。
コードを書き足す都度、エラーがないかを確認しながらやってみてください。
追加は、この3カ所でいけると思います。
全部、DownloadOrder.cs で
1.public CombinedDataSource ConvertToDataSource()
の中のswitch文のMujinzouとかKdbとかYahooとか馴染みある文字が並んでる分岐の一つにに以下を書き加え

case StockDataSource.RakutenRss:
stock_ds = new Specialized.RakuteRssDataSource(_dateArray);
break;

2.internal class DownloadOrder内のstatic public string[] StockDataSourceNames
の中身の1行を以下のように書き換え
get { return new[] {"無尽蔵", "k-db.com", "Yahoo時系列", "edatalab.net", "楽天RSS"}; }
3.同じく、internal class DownloadOrder内の
public enum StockDataSourceを以下のように書き換え
public enum StockDataSource
{
Mujinzou,
KdbCom,
Yahoo,
Edatalab,
RakutenRss
}

データソースのところを
RakuteRssにすれば参照通るってことでしょうか?
2018/11/07(水) 21:52:57.74ID:2KUbY/lz0
>>72
あなたのコードは、こうでした。
>>65
stock_ds = new Specialized.RakutenRssDataSource(_dateArray);

それを>>72でも書いてあるように、こう変えてください。
stock_ds = new Specialized.RakuteRssDataSource(_dateArray);
なぜこのように変えるかというと、
https://osdn.net/users/omegachartuser/pastebin/5673 このページ記述の一番上にこう書いてあるからです。
internal class RakuteRssDataSource : DailyDataSource

ここがRakuteになっているので参照できないという話だと思います。

ちなみに、case文の方をRakuteに変えると別のエラーになりますよ。
case StockDataSource.RakutenRss:

あなたはStockDataSourceをこのように変えました。
public enum StockDataSource
{
Mujinzou,
KdbCom,
Yahoo,
Edatalab,
RakutenRss
}

RakutenRssと書いてあるので、RakuteRssとしたらエラーになります。
74名無しさん@お腹いっぱい。
垢版 |
2018/11/08(木) 20:17:08.73ID:BiSVglTo0
>>73
分かりました。素直にサンプルコードのほうをRakutenRssに換えてみます。
2018/11/09(金) 07:58:55.70ID:10Ver4W70
どうもありがとうございます
2018/11/10(土) 18:56:25.18ID:qWpXz3wa0
MY検索ワード、銘柄名と違うワードで「名前から検索」したい場合に使う機能のサンプルコードです。
OmegaChart親フォルダ配下にsearch_word.txtを設置し、コード,名前 というCSV形式で登録するだけ。
(search_word.txtが存在しなければ、OmegaChartを立ち上げたときに空ファイルを作るようにした)

search_word.txt、CSV形式データ登録例

9984,犬
4335,IPS
4390,ips
9984,禿

名前から検索の窓を出してから、「犬」ワード入力して検索するとソフトバンクGが選択肢に出ます。
MY検索ワード機能に限り、大文字小文字は区別しますが、全角半角は区別しません。
銘柄コード重複登録可能、銘柄の順不同でかまいません。
OmegaChartが立ち上がってるときに、search_word.txtを編集したら、OmegaChart再起動をしてください。

OmegaChart MY検索ワード Brand.cs 追加する部分には//☆MY検索ワード
https://osdn.net/users/omegachartuser/pastebin/5940
OmegaChart MY検索ワード SearchBrandDialog.cs 追加する部分には//☆MY検索ワード
https://osdn.net/users/omegachartuser/pastebin/5941
(Brand.csが6か所、 SearchBrandDialog.csが1か所のコード追加)
2018/11/11(日) 21:30:56.73ID:Q2dHSnnc0
9275 ナルミヤ・インターナショナル
無尽蔵は13 東証マザーズになってるね
2018/11/11(日) 21:55:02.93ID:Q2dHSnnc0
無尽蔵
誤)
6045 12 6045 レントラックス 東証2部
6573 11 6573 アジャイルメディア 東証1部
6618 11 6618 大泉製作所 東証1部
9272 12 9272 ナルミヤイン 東証2部
9275 13 9275 ナルミヤイン 東証マ

正)
6045 13 6045 レントラックス 東証マ
6573 13 6573 アジャイルメディア 東証マ
6618 13 6618 大泉製作所 東証マ
9272 13 9272 ブティックス 東証マ
9275 12 9275 ナルミヤイン 東証2部
6697 13 6697 テックポイン 東証マ ※データなし
2018/11/11(日) 22:17:35.74ID:k4ih8ofS0
アジャイルが東一かぁw
2018/11/12(月) 06:07:46.42ID:4AbFSVKn0
>>76 どうもありがとうございます
2018/11/16(金) 16:50:07.53ID:eNoX6iiz0
保守
82名無しさん@お腹いっぱい。
垢版 |
2018/11/20(火) 19:28:51.50ID:c30pKCxQ0
>>78  むむ、、そんなこととは、無尽蔵さん。
ありがとうございます。
2018/11/23(金) 12:43:16.03ID:52nuaWf30
ほしゅ
84名無しさん@お腹いっぱい。
垢版 |
2018/11/27(火) 00:38:34.15ID:vTIpPCv30
ヤフーは死んだが、なんとかまだ、使えてる、ほんとすごい
BNFもまだ使ってるんだろうか
85名無しさん@お腹いっぱい。
垢版 |
2018/11/27(火) 06:08:23.72ID:nyfx8eX50
ExcelVBAでヤホーも問題なく長期DATA作れますのにね
2018/11/27(火) 19:18:09.94ID:aFQ53k+e0
BNFさんが、OmegaChart使ってたってこと?
87名無しさん@お腹いっぱい。
垢版 |
2018/11/27(火) 23:07:30.27ID:nyfx8eX50
無尽蔵には9399ビート無いですね
2018/12/02(日) 17:20:43.30ID:omikFPy/0
保守
89名無しさん@お腹いっぱい。
垢版 |
2018/12/04(火) 18:02:30.16ID:1dpPRgdB0
○探のページ少し変わったな
2018/12/05(水) 03:22:08.75ID:DGYnVClr0
気付くのが遅れて対応が今終わったところ、眠い
91名無しさん@お腹いっぱい。
垢版 |
2018/12/05(水) 05:32:12.23ID:w1hB+54+0
ご苦労さんです
2018/12/05(水) 20:17:58.30ID:BTtyYKc10
新しい株探だと日付の部分の書き方が変更されているので、その部分の正規表現を書き直す必要があるということ?
93名無しさん@お腹いっぱい。
垢版 |
2018/12/06(木) 18:24:35.90ID:QkKYHnhI0
おいおい無尽蔵もかいな
2018/12/07(金) 13:27:46.90ID:hDMzcM410
<time datetime="2018-12-07">の正規表現は、<time datetime=".*">でもよいと思うのですが、
たとえば(?<year>\d{2})/(?<month>\d?\d)/(?<day>\d?\d)のような形で日付を用いた場合の正規表現はどのように書くことができるのでしょうか?
2018/12/07(金) 16:53:06.68ID:Vggh2KCK0
それが正規表現だ!
2018/12/07(金) 23:43:29.52ID:rfzsoW3T0
<time datetime=\"(?<year>\d{4})-(?<month>1?\d)-(?<day>\d?\d)\">
2018/12/08(土) 11:26:21.40ID:B8jNP4I90
どうもありがとう
98名無しさん@お腹いっぱい。
垢版 |
2018/12/12(水) 20:21:37.60ID:Zv2x5Vpc0
無尽蔵に無いJDR銘柄データ
1557 SPDR S&P500 ETF
1584 サムスンKODEXサムスングループ株証券上場指数投資信託[株式]
1773 YTL
4875 メディシノバ・インク
6697 テックポイント・インク
8686 アフラック
9399 ビート・ホールディングス・リミテッド

他にもありますか?
2018/12/18(火) 07:47:03.13ID:UKfKKVte0
ほしゅ
2018/12/18(火) 21:46:06.73ID:dEBa8fcW0
panacoranです

YahooでアップデートできないのはHTTPSで
SSL3.0とTLS1.0が蹴られるようになったからです
.NET Framework 2.0ではどうにもならないので、
バージョンを上げて対処する形になります
しばしお待ちを
2018/12/19(水) 07:58:31.88ID:Ssd/eDA20
どうもありがとうございます
2018/12/19(水) 16:10:39.22ID:AurUJvii0
>>100
やった!ほんと助かります
2018/12/19(水) 17:19:24.00ID:2md7XA8F0
>>100
よろしくお願いします! そういうのが素人だとわからないので助かります。
104名無しさん@お腹いっぱい。
垢版 |
2018/12/19(水) 17:45:23.56ID:fvrIYsVq0
>>100
よろしくお願いします。
2018/12/24(月) 16:35:37.75ID:w9ThDhF+0
panacoranさんたからクリスマスプレゼント?
106panacoran
垢版 |
2018/12/24(月) 20:47:09.30ID:uVrMU9Yv0
panacoranです

.NET Frameworkのバージョンを4.7.2に上げる変更と、
Yahooからのダウンロードをシングルスレッドにする変更を
リポジトリにプッシュしておきました
https://ja.osdn.net/users/panacoran/pf/OmegaChart/scm/
.NET Framework 4.7.2のインストールを忘れずに
https://dotnet.microsoft.com/download/dotnet-framework-runtime
ちなみにTLSの問題は4.7.2にするだけで解決します

こちらに整理されている変更も取り込もうかと思ったのですが、
https://osdn.net/projects/omegachartusers/wiki/FrontPage
どれが無難に取り込めるのかわからなかったので、今回は保留しました
取り込むべきものを指示してもらえれば取り込みます

では、よいお年を
2018/12/24(月) 22:01:23.92ID:bna+MHKa0
>>106
ありがとうございます!
なるほど、ターゲットフレームワークを.NET Framework 4.7.2にするとよかったわけですね。
ちなみに、.NET Framework 4.6.1でも動きました。4.7.2をインストールして、本番環境で使いたいと思います。
2018/12/25(火) 00:47:10.33ID:IFtF6Uw60
ありがとうございました
2018/12/25(火) 08:48:40.27ID:FXvHA/L80
今回ついにVS2010ではプロジェクトを開けなくなったか
まずはこれを新しくしなくては
2018/12/25(火) 10:54:11.86ID:IiNzICYl0
Yahoo.csで日経とTOPIXを更新しない場合は76〜80行目をコメントアウトすればいいの?
2018/12/25(火) 14:06:21.51ID:OdH2gHfD0
>>110
_codeQueue = new Queue<int>(_codes);
この行だけは残す
2018/12/25(火) 14:58:40.80ID:IiNzICYl0
了解!
2018/12/25(火) 15:02:40.88ID:V39vjdXZ0
panacoranです

ビルド方法の説明が必要なことを忘れていました
https://osdn.net/users/panacoran/pf/OmegaChart/wiki/FrontPage#h1-.E3.83.93.E3.83.AB.E3.83.89.E6.96.B9.E6.B3.95

データソースからk-db.comを削除するのと、
edatalab.netのドメイン変更に対応するのをやっておきました
Protraで行った変更の反映は以上です

>>110
79を取ったら動きません
76,77,78,80のコメントアウトでいけると思います

今度こそよいお年を
2018/12/25(火) 15:13:09.89ID:OdH2gHfD0
>>113
詳細説明、ありがとうございます。
2018/12/25(火) 16:02:55.77ID:IiNzICYl0
>>111 >>113
ありがとうございます。良いお年を!
116名無しさん@お腹いっぱい。
垢版 |
2018/12/25(火) 20:26:45.97ID:XnYvujsQ0
>>113
ありがとうございます。
2018/12/26(水) 00:14:57.47ID:je/QX29R0
>>113
ビルドできました!もう感謝しかないです、ありがとうございました。
2018/12/26(水) 11:11:18.50ID:4ifV0AuE0
.NET Framework 4.7.2はビルドする環境で必要で、ビルドしてできたプログラムを動かす場合には必要ありませんよね?
2018/12/26(水) 15:57:38.37ID:SgoQy7Bc0
>>118
4.7.2にバージョンアップしてない環境へOmegaChart.exeを送って実行したら、チャート表示、ヤフーからのダウンロードができました。

Wikiで.NET Frameworkについて調べてみると、「.NET Framework 4.7 Windows 10 ver.1803と同時に4.7.2がリリースされた」とあります。
昔はランタイムを別途インストールしてた覚えがありますが、今はOSに同梱されているということでしょうかね。
2018/12/27(木) 10:25:54.13ID:FuyU2m6Y0
>>119 どうもありがとうございます。
2018/12/28(金) 08:38:39.97ID:jPI80NHF0
windows10 64bitでビルドしたものでは、新しくヤフーに対応したオメガチャートがエラーなく動くのですが、windows7 32bitでビルドしたものでは、以前のように、接続が切断されました。〜のエラーが表示され不具合が起こります。
ひょっとしたら私だけかもしれないのですがwindows7 32bitでビルドして正常に動作している方おられますでしょうか?
2018/12/28(金) 11:19:15.24ID:VtlpSyZu0
>>121
>>118-119
2018/12/28(金) 12:15:00.89ID:jPI80NHF0
>>122
.NET Framework 4.7.2はwindows7 32bitにもインストールしています
2018/12/28(金) 13:42:55.97ID:ZxJELor70
ヤフーファイナンスから情報が取れなくなったのは、

YahooでアップデートできないのはHTTPSでSSL3.0とTLS1.0が蹴られるようになったからです
.NET Framework 2.0ではどうにもならないので、バージョンを上げて対処する形になります

とのことでした。

ヤフーファイナンスから情報取得するためには、2つの条件が必要
・.NET Frameworkのバージョンを4.7.2に上げてビルドして実行ファイルを作る
・.4.7.2のソフトウェアが動くOSのバージョンである、 Windows 10 ver.1803以上で使う

>>121さんの件は、OSが古くて動かないってことなのかと予想します。
2018/12/28(金) 15:32:24.45ID:VtlpSyZu0
>>123
Windows10でビルドしたOmegaChart.exeを、Windows7に送って実行しても無理なら諦めろ
2018/12/28(金) 17:11:43.56ID:ZxJELor70
Windows 7 SP1 と Windows Server 2008 R2 に .NET Framework をインストールする
https://docs.microsoft.com/ja-jp/dotnet/framework/install/on-windows-7
127名無しさん@お腹いっぱい。
垢版 |
2018/12/28(金) 18:36:51.75ID:PViTgePk0
Windows 7 では同じく駄目でした
2018/12/28(金) 20:38:59.78ID:VtlpSyZu0
まだWindows10にアップグレード出来るのかな?
https://www.microsoft.com/ja-jp/software-download/windows10
2018/12/28(金) 20:52:13.74ID:HLXjfwRV0
なかなか年を越せないpanacoranです

Windows 7では明示しないとTLS 1.1以上が使われないのを見落としてました
https://osdn.net/users/panacoran/pf/OmegaChart/scm/commits/4fee7d9fb204634e724e8369977d596daf7ca215

こういうフィードバックを得るためにこちらに顔を出しているので
私的には助かります
130名無しさん@お腹いっぱい。
垢版 |
2018/12/29(土) 07:18:38.26ID:dNGhixff0
panacoran さん Windows 7 でも無事出来ました 本当に有り難うございました
131名無しさん@お腹いっぱい。
垢版 |
2018/12/29(土) 07:52:54.74ID:lSfgW1ix0
>>129
>>130
ありがとうございます。
2018/12/29(土) 10:06:53.83ID:qWN16sv80
>>129 
どうもありがとうございます。
129のコードを用いると、個別銘柄のデータは問題がないのですが、日経平均などの指数データの取得がなぜかできない状態です。
ほかの方は、問題なく指数データも取得できていますでしょうか?
2018/12/29(土) 10:09:29.86ID:qWN16sv80
132は、windows7における状況です。
2018/12/29(土) 16:29:42.20ID:/pfChuzg0
>>132
デバッグモード走行でブレークポイントなどを利用して確かめると、実際に何が起きてるか分かりますよ。
そのWindows7環境で試してみたらどうでしょうか。

日経平均が更新されたか否かは、Yahoo.csの120行目
farm.UpdateDataFarm(pair.Key, pair.Value);
この行を正常に処理するかどうかで分かります。

以下は、その手順です。
VisualStudio起動して、OmegaChartのソースを開く。
Yahoo.csの120行目にブレークポイントを設定して、デバッグモードで起動。
起動の仕方は、F5ボタン押下か、「デバッグ」−「デバッグの開始」、もしくは「開始」ボタン押下
起動したOmegaChartから「データのダウンロード」画面で、
 株価ソース → Yahoo時系列
 株価指数 → チェック外す
を設定してから、「開始」。
120行目で止まったら、F5ボタン押下か、「デバッグ」−「続行」、もしくは「続行」ボタン押下
日経平均株価が更新されたかどうかを確認する。
120行目で止まらなかったら、59行目〜61行目で失敗している?
2018/12/30(日) 10:05:51.23ID:DBdTRsnv0
OmegaChartの初期化ファイル(ZIP)更新しました。2018年12月末分まで。
https://drive.google.com/open?id=1yFyFiI1OI-HlJwB9KoBMd9_qqa9y8mAQ
(前回と同じURLです)
2018/12/30(日) 11:29:09.24ID:5Y0LOhe40
>>134
どうもありがとうございます

>VisualStudio起動して、OmegaChartのソースを開く。
>Yahoo.csの120行目にブレークポイントを設定して、デバッグモードで起動。
>起動の仕方は、F5ボタン押下か、「デバッグ」−「デバッグの開始」、もしくは「開始」ボタン押下
>起動したOmegaChartから「データのダウンロード」画面で、
> 株価ソース → Yahoo時系列
> 株価指数 → チェック外す
>を設定してから、「開始」。
>120行目で止まったら、F5ボタン押下か、「デバッグ」−「続行」、もしくは「続行」ボタン押下
>日経平均株価が更新されたかどうかを確認する。
>120行目で止まらなかったら、59行目〜61行目で失敗している?

何度か120行目で止まるので、その都度続行をボタン押下したところ最終的には日経平均株価は更新されませんでした。
2018/12/30(日) 14:13:46.79ID:DBdTRsnv0
>>136
となりますと、122行目の
farm.Save(Util.GetDailyDataFileName(code));
ここで、実際にファイル書き込みに行ってるんですが、ここで失敗してるのかもしれないですね。
ここも正常に通過してるかを確認したほうが良さそうです。
2018/12/30(日) 14:20:48.89ID:DBdTRsnv0
ちなみにですが。
ブレークポイントで止まったときに、その行にカーソルを合わせると、変数に何が入ってるのか表示されます。
>>137のコードの場合ですと、codeにカーソルを合わせると(クリックしなくていい)、日経平均のときは101という文字が浮かび上がります。
120行目の場合ですと、pair.Keyに日付、pair.Valueの中身を見るには、浮かび上がった文字の先頭三角記号にカーソルを合わせると4本値が表示されるはずです。

中身を確認しながら、デバッグするとエラー原因が突き止めやすくなります。
F5ではなく、F11ボタンを押下すると1行ずつコードを進めてくれるのでより細かく調査することができます。
139名無しさん@お腹いっぱい。
垢版 |
2018/12/30(日) 22:01:53.11ID:7o8T7Pb30
Windows7 sp1(ビルド7601)で、ヤフーからDLできました。
どうもありがとうございました。
140名無しさん@お腹いっぱい。
垢版 |
2018/12/31(月) 06:23:36.26ID:FWDySk/d0
>>132
そういえば日経平均だけ取れてませんずっとこんなものかと思っていました
今みるとTOPIXや業種別指数などは正常にダウンロード出来ていましたね
外国為替や指数類は別途拾っていたのであまり気にも掛けずにいましたが
2018/12/31(月) 11:10:40.55ID:HyC/02eP0
>>137
日経平均の株価が更新されないの件。

120行目の farm.UpdateDataFarm(pair.Key, pair.Value); でメモリ上に日経平均株価情報をセット
122行目の farm.Save(Util.GetDailyDataFileName(code)); でOmegaChartのdataフォルダ内の0101物理ファイルを上記メモリ内容で上書き
この2行を”正常に”通過したら、絶対に株価更新されます。

F11ボタンでエラーを探るのが面倒なら、try〜catch文を挿入してエラーをキャッチします。
try
{
foreach (var pair in prices)
{
if (empty && skip && pair.Value.volume == 0)
continue;
skip = false;
farm.UpdateDataFarm(pair.Key, pair.Value);//ブレークポイント設定
}
farm.Save(Util.GetDailyDataFileName(code));//ブレークポイント設定
}catch(Exception ex)
{
Console.WriteLine(ex.Message);//ブレークポイント設定
}

Console.WriteLine(ex.Message);の行にブレークポイントを設定すれば、エラーになったときだけ止まります。
止まったときに、マウスカーソルをex.Messageに合わせたら、エラー内容が浮き上がります。
ちなみにテストするときは、対象を1日分だけにするとforeachが1周だけで済みます。
2019/01/01(火) 11:22:46.47ID:CIUYr+Zg0
>>138 どうもありがとうございます。
120行目、122行目にブレークポイントを設置して、デバックをしたところコード101、102と止まらずに作業が終わります。(結果として日経平均とTOPIXはデータ取得ができない状態になる)
ちょっと気になるのが、122行目で、visual studio左下の自動という名前のウィンドウのところでcode 102が赤字となるところくらいでしょうか
2019/01/01(火) 13:37:05.67ID:CIUYr+Zg0
>>141 try〜catch文に書き換えて、デバッグしたのですがエラーが表示されませんでした。(日経平均とTOPIXはデータ取得ができていません)
144panacoran
垢版 |
2019/01/01(火) 15:27:04.74ID:DeWG12IY0
まずYahoo.csが私の書いたものと完全に一致するか確認してください
2019/01/01(火) 21:31:21.59ID:Z9eiHff70
誠に申し訳ないんですけれどもzipで最新のomegachartのコードをダウンロードして、visual studio2017を用いてビルドした場合に
windows10では株価指数がダウンロードできるのですが、windows7ではやはり株価指数がダウンロードできないのですね
正月明けに会社の別のパソコンでも試してみます
2019/01/01(火) 22:59:52.84ID:1QwwXAOK0
こうなると、ブレークポイントを59行目から78行目くらいまで全部設定して、F5ボタンで送りながら1行1行日経平均0101の株価取得状況を確かめるしかなさそうです。
こんな感じで↓
https://static-cdn.osdn.net/thumb/g/5/651/800x600_0.png

ポイントは、
・61行目のnikkei225に株価情報が入ったか?(画像の要領でやると株価が浮かび上がります)
・73行目を正常に通過したか

77行目から113行目に飛ぶので、113行目から123行目も全部ブレークポイントを設定しておきます。

ここでのポイントは
・113行目に入ったときに、113行目にあるcodeにカーソルを合わせて101であることを確認
・119行目のcontinueに入っていないか

121行目からData.csのUpdateDataFarmに飛びます。301行目です。

ここでのポイントは339行目から346行目を正常に通過するかなので、
346行目の「*(int*)(a + 20) = td.volume;」 この行だけブレークポイントを設定すると良いと思います。

これが終わると
Yahoo.csのUpdateDataFarm、122行目に戻ります。
ダウンロード日数分foreachでループした後、123行目からData.csのSave、281行目に飛びます。
ここはData.cs284行目のs.Write が正常に処理されればOKなので、285行目にブレークポイントを設定しておきます。
filenameにどのような情報が入っているか、0101ファイルが指定されているかもカーソルを合わせて確認すると良いかもしれません。

ここまで確認して日経平均株価0101が更新されなかったら、謎としか言いようがないですね。
147panacoran
垢版 |
2019/01/01(火) 23:31:11.11ID:DeWG12IY0
手元のWindows 7で日経平均とTOPIXが取れない現象が再現しました
Yahoo.cs以外に原因がある気がしますが、まだわかりません
おいおい調べます
2019/01/02(水) 00:10:11.06ID:3dthXrkM0
元日からありがとうございまし
2019/01/02(水) 20:51:45.41ID:axcI/eBE0
>>146
ご丁寧にどうもありがとうございます。逐次調べるしかなさそうですね。

>>147
どうもありがとうございます。よろしくお願いいたします。
2019/01/04(金) 20:14:42.88ID:7SoLu1E60
独り言です。なぜか株価が置いてあるサイト、「2019」というフォルダを作り忘れて株価更新できず。
2019/01/05(土) 12:16:50.10ID:EmFitHs00
>>146

順次調べていったところ、windows7ではどうも日経平均やTOPIXの場合は、Yahoo.csの118行目あたりでcontinueに進むためにデータ取得されないようですね
ひょっとしたら出来高が0になっているほかの銘柄でも同じような影響があるのかも
152名無しさん@お腹いっぱい。
垢版 |
2019/01/06(日) 18:14:41.42ID:QbeNbXS00
これはひょっとしたらWindows7のアンチウイルスソフトのせいかもしれないね というのはこいつが多分悪さして
スクリプト実行を監視していたおかげであり得ないはずの同じ名前のCSVファイルが出来ていたのでそう思ったよ
そこでアンチウイルスをオフにして過去データを数年分8時間も掛けて取得してみたら時々取得出来なかった様な
事も起きずにいずれもDL可能だった 念のため日経とトピのデータ欠落が無いかを調べたがどちらも1092本無事に
取れていたWindows 7の人はコードを調べるよりもウイルスより質の悪いソフトを疑ってみた方が良いのでは!?
2019/01/07(月) 08:10:28.34ID:H3CoQ+tS0
件のcontinueをコメントアウトすると日経平均やトピックスのデータ取得に関しては正常となります
2019/01/07(月) 08:11:45.10ID:H3CoQ+tS0
>>153
windows7に関しての話ですが
2019/01/07(月) 08:12:18.38ID:kPc64rM20
Microsoft Security Essentials 除外されたプロセス
2019/01/07(月) 11:41:53.15ID:KKO2Y/NI0
>>153
となると、113行目のfarmに日経平均株価の値がセットされないので、continueされてしまうという話になりますね。
そうなるには、Brand.csのBuiltInIndexに日経平均の項目がないか(ありえませんけど)
同じく、Brand.cs、BrandCollectionのLoad処理時に、_日経平均の読み込みで失敗したということになるかなと思います。
2019/01/07(月) 12:24:23.91ID:KKO2Y/NI0
>>156
なので、0101ファイルや0102ファイルなしでYahooのダウンロードをすると、日経平均株価とTOPIXなどは更新されないということになります。
テスト環境で動かす時も0101ファイルを用意するべきだったということが顛末なんじゃないかと予想します。
2019/01/07(月) 21:39:07.78ID:kClhCBhI0
>>157
どうもありがとうございます。
0101ファイルや0102ファイルを事前に置いてデータ取得した場合は日経平均株価とTOPIXが更新されたので、windows7で用いる際には出来高がない場合にはファイルを事前に置いておかないといけないようです
(個別株だと事前にファイルなしでも問題ないです)
windows10ではそういうことはなかったのでOSの違いなんですかね
2019/01/07(月) 21:48:54.29ID:KKO2Y/NI0
>>158
うちはWindows10の環境しかないので違いを確かめることはしていませんが、こちらの環境だと0101ファイルなしだと日経平均株価が更新されなかったですね。
本番環境だと0101ファイルがないのは考えられないので、テストするときに気を付けようって話であって、コードは特に変更する必要がないと思いました。
160名無しさん@お腹いっぱい。
垢版 |
2019/01/08(火) 00:57:13.66ID:JADfF2690
ありがとうございます。
161名無しさん@お腹いっぱい。
垢版 |
2019/01/08(火) 06:15:51.65ID:iVomyJI70
書き込みする前にもっと良く調べないと迷惑だよな
2019/01/08(火) 10:45:01.85ID:dyliVRjw0
過疎スレがすこしでも賑わっていいじゃないか
ひとそれぞれ
2019/01/08(火) 11:35:27.84ID:2bHwWqMX0
話を要約すると、今回の新しいオメガチャートで日々のデータを更新するときに0101と0102のファイルが事前に必要となるということですか?
■ このスレッドは過去ログ倉庫に格納されています
大学生アイラと影の怪物と戦うリョウが、深夜3時3分の静止した世界で交錯する超常スリラーの概要

ニューススポーツなんでも実況