実践データ解析- 株式市場その1-(2018年1月31日更新)
目次
- 前提条件
- 実践データ解析 目次
- 株式市場その1
- 1. コマンドプロンプトでJupyter Notebookを起動します。
- 2. 写経したソースコードはGitHub Repositoryを参照してください。
- 3. 課題
- 4. 補足
- 4.1. from pandas.io.data import DataReaderの箇所で以下のエラーがでます。
- 4.2. エラーの指示通り pandas-datareader をインストールし、from pandas.io.data import DataReaderからfrom pandas_datareader import dataに修正します。
- 4.3. 修正方法が間違っているようなので更に次のようにimport pandas_datareader.data as webと修正します。
- 4.4. yahooから株価を取得する箇所も修正します。
- 4.5. しかし以下のようなエラーが出ます。困った。いろいろ調べていると現在yahoofinanceは使えないらしいです。
- 4.6. googlefinnanceで挑戦してみます。
- 4.6.1. googlefinance 0.7からtar.gzをダウンロードし、Anacondaのインストールフォルダ配下pkgsでファイルを解凍します。
- 4.6.2 ファイル解凍した後、googlefinance-0.7ディレクトリに移動します。
- 4.6.3 パッケージをインストールします。
- 4.6.4 googlefinanceの使い方がよくわからないため保留。
- 4.7. Anacondaのインストールパス配下にあるC:\Users\<user name>\AppData\Local\Continuum\Anaconda3\Lib\urllibのrequest.pyにプロキシの設定を試みるもエラー解消せず。
- 4.8. URLからデータを引っ張ってくるのを諦め、stooqからcsvファイルをダウンロードし対処しました。なんだかなー、、、
- 4.9. 解決策がUdemyのQ&Aにありましたね。googlefinanceもyahoofinanceも現在はAPIを公開していないようですね。がっかり。
- 4.10. Adj CloseがAdj. Closeになっているなどの変化はありますが問題なく使えます。
- 参考:
前提条件
実践データ解析 目次
1. タイタニックその1
2. タイタニックその2
3. タイタニックその3
4. タイタニックその4
5. 株式市場のデータ解析入門
6. 株式市場その1
7. 株式市場その2
8. 株式市場その3
9. 株式市場その4
10. 株式市場その5
11. 選挙とデータ解析
12. 選挙その1
13. 選挙その2
14. 選挙その3
株式市場その1
1. コマンドプロンプトでJupyter Notebookを起動します。
jupyter notebook
2. 写経したソースコードはGitHub Repositoryを参照してください。
3. 課題
3.1. 株価の時間による変化を見てみる。
3.2. 日ごとの変動を可視化する。
3.3. 移動平均を計算する
3.4. 複数の株価の終値の相関を計算する
3.4. 複数の株価の変動の関係を見る
3.5. 特定の株のリスクを計算する
3.6. シミュレーションを使った未来の予測
4. 補足
4.1. from pandas.io.data import DataReader
の箇所で以下のエラーがでます。
--------------------------------------------------------------------------- ImportError Traceback (most recent call last) <ipython-input-3-94408a55e554> in <module>() ----> 1 from pandas.io.data import DataReader C:\Users\<user name>\AppData\Local\Continuum\Anaconda3\lib\site-packages\pandas\io\data.py in <module>() 1 raise ImportError( ----> 2 "The pandas.io.data module is moved to a separate package " 3 "(pandas-datareader). After installing the pandas-datareader package " 4 "(https://github.com/pydata/pandas-datareader), you can change " 5 "the import ``from pandas.io import data, wb`` to " ImportError: The pandas.io.data module is moved to a separate package (pandas-datareader). After installing the pandas-datareader package (https://github.com/pydata/pandas-datareader), you can change the import ``from pandas.io import data, wb`` to ``from pandas_datareader import data, wb``.
4.2. エラーの指示通り pandas-datareader をインストールし、from pandas.io.data import DataReader
からfrom pandas_datareader import data
に修正します。
4.3. 修正方法が間違っているようなので更に次のようにimport pandas_datareader.data as web
と修正します。
4.4. yahooから株価を取得する箇所も修正します。
修正前
for stock in tech_list: globals()[stock] = DataReader(stock,'yahoo',start,end)
修正後
for stock in tech_list: globals()[stock] = web.DataReader(stock,'yahoo',start,end)
4.5. しかし以下のようなエラーが出ます。困った。いろいろ調べていると現在yahoofinanceは使えないらしいです。
ConnectionError: HTTPSConnectionPool(host='finance.yahoo.com', port=443): Max retries exceeded with url: /quote/AAPL/history (Caused by NewConnectionError('<requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x00000196A6B83C50>: Failed to establish a new connection: [WinError 10060] 接続済みの呼び出し先が一定の時間を過ぎても正しく応答しなかったため、接続できませんでした。または接続済みのホストが応答しなかったため、確立された接続は失敗しました。',))
4.6. googlefinnanceで挑戦してみます。
4.6.1. googlefinance 0.7からtar.gzをダウンロードし、Anacondaのインストールフォルダ配下pkgsでファイルを解凍します。
例:
C:\Users\<user name>\AppData\Local\Continuum\Anaconda3\pkgs\googlefinance-0.7
4.6.2 ファイル解凍した後、googlefinance-0.7ディレクトリに移動します。
cd C:\Users\<user name>\AppData\Local\Continuum\Anaconda3\pkgs\googlefinance-0.7
4.6.3 パッケージをインストールします。
python setup.py install
4.6.4 googlefinanceの使い方がよくわからないため保留。
4.7. Anacondaのインストールパス配下にあるC:\Users\<user name>\AppData\Local\Continuum\Anaconda3\Lib\urllib
のrequest.pyにプロキシの設定を試みるもエラー解消せず。
import urllib.request proxy_support = urllib.request.ProxyHandler({'http': 'http://<proxy server name>:<port number>'}, {'https': 'https://<proxy server name>:<port number>'}) opener = urllib.request.build_opener(proxy_support) urllib.request.install_opener(opener)
4.8. URLからデータを引っ張ってくるのを諦め、stooqからcsvファイルをダウンロードし対処しました。なんだかなー、、、
4.9. 解決策がUdemyのQ&Aにありましたね。googlefinanceもyahoofinanceも現在はAPIを公開していないようですね。がっかり。
まずはquandlをpip installします。
訂正前
globals()[stock] = DataReader(stock,'yahoo',start,end)
訂正後
import quandl for stock in tech_list: globals()[stock] = quandl.get('WIKI/{}'.format(stock),start_date=start,end_date=end)
4.10. Adj CloseがAdj. Closeになっているなどの変化はありますが問題なく使えます。
- 作者: Bill Lubanovic,斎藤康毅,長尾高弘
- 出版社/メーカー: オライリージャパン
- 発売日: 2015/12/01
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (3件) を見る
参考:
- udemy 実践Pythonデータサイエンス
- 作者: 辻真吾
- 出版社/メーカー: 技術評論社
- 発売日: 2010/04/24
- メディア: 大型本
- 購入: 19人 クリック: 199回
- この商品を含むブログ (59件) を見る