第三方功能(外掛小工具)

2019年6月14日 星期五

Python告訴你~股價淨值比 可靠嗎 ?

Python告訴你
股價淨值比 可靠嗎?

探討大盤萬點時
買進 股價淨值比 < 0.5 的股票
是否能成為勝利方程式

情境:

1.2018.5.15日萬點行情
大盤:10874.73

2.2018.5.15日公告第1季財報
計算股價淨值比
將 < 0.5 的股票各買進1張持有

3.回測:2017、2016、2015年報酬率

結論:

1.2017年回測:虧損23.83%
2016年回測:獲利15.32%
2015年回測:虧損22.52%

2.選股策略:股價淨值比 < 0.5 目的是想買到便宜又有價值的股票
但是可能因此挑選到 "地雷股"
反而因此大賠出場

3.投資市場複雜多變
只想用1招 股價淨值比
實在不是一個好的策略















2019年6月7日 星期五

Python之 ffn套件~超級無敵方便

ffn (Financial Functions for Python)

安裝好 ffn套件後
再用 get('股價代碼')
就可以取得你想要的股票
從2010年以來的股價資料
非常方便吧

以下以:台灣50(0050.TW),台積電(2330.TW)
蘋果公司(aapl),波克夏(brk-b)為例

#2010年以來股價資料
import ffn
prices=ffn.get('0050.TW,2330.TW,aapl,brk-b')
prices.head()

#股價曲線圖
%matplotlib inline
import matplotlib.pyplot as plt
plt.rcParams["figure.figsize"]=(20,10)
prices.plot()

#報酬率
prices.rebase()
prices.rebase().plot(secondary_y=True)

#虧損幅度
prices.to_drawdown_series()
prices.to_drawdown_series().plot()

#相關係數熱圖
prices.plot_corr_heatmap()

#歷史數據分析
stats=prices.calc_stats()
stats.display()

以上摘錄自:https://www.finlab.tw/ffn-intro/


































2019年6月6日 星期四

Python~豐富的技術指標

有接觸投資的朋友
如果你有整理一些股票的資料
比如開盤價,收盤價
最高價,最低價等等

那麼你就可以運用
Python豐富的技術指標
如:KD,RSI,MACD,SMA
布林通道,等等
製作出像財經網站一樣的圖表

在 Python 只要安裝 Talib 套件
就有1百多種技術指標隨便你用
讓你用的嫑嫑的


以下為程式碼:
---------------------------------------

import sqlite3
import os
import pandas as pd

filepath=os.path.join('data','data.db')
conn=sqlite3.connect(filepath)
df=pd.read_sql('select stock_id,date,開盤價,收盤價,最高價,最低價,成交股數 from price where stock_id="2330" ',conn,index_col=['date'],parse_dates=['date'])
df.rename(columns={'stock_id':'股票代號','開盤價':'open','收盤價':'close','最高價':'high','最低價':'low','成交股數':'volume'},inplace=True)

%matplotlib inline
import matplotlib.pyplot as plt
plt.rcParams["figure.figsize"]=(20,10)
df['close']['2019-2-13':].plot()

from talib import abstract
abstract.STOCH(df)['2019-2-13':].plot(secondary_y=True)
abstract.SMA(df,timeperiod=5)['2019-2-13':].plot()
abstract.RSI(df,timeperiod=14)['2019-2-13':].plot(secondary_y=True)
abstract.MACD(df)['2019-2-13':].plot()
abstract.BBANDS(df)['2019-2-13':].plot()