/asset-alloation-v2

Primary LanguageJavaScriptMIT LicenseMIT

資產配置系統平台

本專案分析現今美國規模前100的ETF以及美國市值前100的公司股票進行資產配置的投資組合策略,以長期投資的觀點並結合自動化資產比例的調整達成每單位風險下之高報酬。

背景知識

ETF

ETF(exchange traded fund)稱為股票型指數基金,也可以稱為指數股票型基金、交易所買賣基金,翻譯上都是指能在股票交易所買賣的指數型基金。 換句話說,ETF就是被動追蹤某一指數表現的共同基金,並且在集中市場掛牌,像一般股票交易讓投資人買賣。 簡單來說,購入ETF可以少少的資金去購買到許多種標的來分散風險,並且買賣方便,被動追蹤指數也不需花費許多心力管理資產。

資產配置

將資產分別投資於不同的金融商品或標的物,藉由分散資產來降低風險。

再平衡

各資產比例可能因各自漲幅不同而有變化,透過合理的重新調整各資產比例,讓自身投資組合的風險和規劃一致。

平台使用介紹

使用流程

image

平台使用demo影片(點選圖片連結至YouTube)

image 本平台有三大功能:
1.資產配置 : 對於第一次使用本平台的使用者,可針對使用者需求進行第一次的客製化資產配置。
2.查詢 : 對於已完成第一次資產配置的使用者,可查詢開始投資至今的資產情形。
3.模擬 : 若使用者對於過去某時間點到現在的投資情形有興趣,也有模擬投資功能。

程式架構

image

資產配置

choose.py : 計算預期報酬率、選股、將選股結果放入資料庫
historical_m_total.py : 計算歷史回測(作圖所需數值)、常見時間長度之回測分析資料、重大事件回測計算
risk_analysis2.py : 計算投資組合各種風險評估數值(標準差、夏普值、最大回撤率)

查詢

再平衡_日.py : 以每日(價值)再平衡計算投資至今的總資產、個別資產(金額與比例)
db_get.py : 從資料庫取得使用者相關資料

模擬

choose_try.py : 計算預期報酬率、選股、將選股結果放入資料庫
再平衡_日_try.py : 以每日(價值)再平衡的方式計算投資至今的總資產、個別資產(金額與比例)與各種風險評估數值(標準差、夏普值、最大回撤率)
再平衡_月_try.py : 以每月再平衡的方式計算投資至今的總資產、個別資產(金額與比例)與各種風險評估數值(標準差、夏普值、最大回撤率)
再平衡_年_try.py : 以每年再平衡的方式計算投資至今的總資產、個別資產(金額與比例)與各種風險評估數值(標準差、夏普值、最大回撤率)
再平衡_無_try.py : 以不進行再平衡的方式計算投資至今的總資產、個別資產(金額與比例)與各種風險評估數值(標準差、夏普值、最大回撤率)
dB_flush.py : 從資料庫取得資料、將以再平衡更新過的資料庫重置,以準備下一次模擬