iT邦幫忙

2021 iThome 鐵人賽

DAY 9
0
AI & Data

從零開始的套牢生活 - AI股票預測系統系列 第 9

[Day 9] 從零開始的股票預測 - 籌碼面

一、籌碼面

籌碼面主張跟著大金主的動向,搭上主力順風車。

股票價格在於市場買賣行為,
籌碼面分析大戶的每個動向,
他們擁有雄厚的資金、影響股價的能力,
跟著他們的腳步走,比較不會出錯,對投資也較有利。

From 什麼是籌碼面?

二、籌碼資料

我們今天要用到的資料有三個,分別是

  • 個股融資融劵表
  • 個股三大法人買賣表
  • 外資持股表

融資融券可以理解為和券商(大盤)借錢買/賣股票,更詳細介紹點我
三大法人即為台股的三種大盤:外資、投信、自營商
而外資是其中最大的

三、個股融資融劵表

根據FinMind的資料,你抓下來的個股融資融劵表大概會長這樣子
https://ithelp.ithome.com.tw/upload/images/20210914/20141586WF8Nj8lMyZ.png

忘了FinMind是什麼的點我

看的出來和昨天的技術面資料差不多,唯一值得注意的是註記(Note)
https://ithelp.ithome.com.tw/upload/images/20210914/20141586j6mxN5x5h5.png
我們需要把它改成0/1格式,好符合之後的模型需求

df.loc[:, "Note"] = df.loc[:, "Note"].replace(" ", 0).replace("X ", 1)

四、個股三大法人買賣表

接下來是籌碼分析的主力,三大法人
這部分資料比較麻煩,抓下來會長這樣
https://ithelp.ithome.com.tw/upload/images/20210914/2014158606WzMwliTG.png

我們會希望資料是Stock_id, Date, ....N種特徵... 的形式
所以會需要把它做些轉換

result_df = df.pivot(index=["date", "stock_id"], columns="name", values=["buy", "sell"]).stack(0).unstack()

看不懂轉換方法的可以點我

既然都轉換了就順便把欄位名稱一起改了

result_df.columns = result_df.columns.to_flat_index().map(lambda x: "_".join(x))

五、外資持股表

https://ithelp.ithome.com.tw/upload/images/20210914/201415863JssjsPadQ.png
很乾淨的資料,把不用的欄位砍掉即可

result_df = df.drop(
        columns=[
            "stock_name",
            "InternationalCode",
            "note",
            "RecentlyDeclareDate",
            "ForeignInvestmentUpperLimitRatio",
            "ChineseInvestmentUpperLimitRatio",
        ]
    )

六、合體

把["date", "stock_id"]當成索引後合併

A = TSMPS_df.set_index(["date", "stock_id"])
B = TSIBS_df.set_index(["date", "stock_id"])
C = TSS_df.set_index(["date", "stock_id"])


BI_df = pd.concat([A, B, C], axis=1).reset_index()

此時檢查一下Null發現有200筆左右資料不見了
https://ithelp.ithome.com.tw/upload/images/20210914/20141586KtvNdw8am4.png

查了一下應該是節日,由於沒幾筆直接補0就好了
https://ithelp.ithome.com.tw/upload/images/20210914/201415869D3pgM1Qkm.png

BI_df = BI_df.fillna(0)

照例檢查下相關係數,所幸看起來挺不錯的
https://ithelp.ithome.com.tw/upload/images/20210914/20141586plMeGwl6oG.png

完整程式碼點我

今天我有記得開權限了

PS

明天開始處理基本面,照這資料噁心程度應該會拆成兩篇

聽說放鎮樓圖Code會打比較順,
https://ithelp.ithome.com.tw/upload/images/20210914/20141586YBvGeNnFzF.jpg
From 百鬼あやめ


上一篇
[Day 8] 從零開始的股票預測 - 技術指標與相關係數
下一篇
[Day 10] 從零開始的股票預測 - 基本面
系列文
從零開始的套牢生活 - AI股票預測系統30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言