MSMP.DataFrame 資料格式

MSMP 回傳的資料格式為擴充版的 pandas.DataFrame:ProboDataFrame,為kgisuperpy api自訂的資料結構,它是針對原生 pandas.DataFrame 進行優化與功能封裝後的資料結構,提供股票、財報、技術指標資料處理的便捷方法,主要功能如下:

1. index_str_to_date()
 ●功能:將字串型 index(年、季、月)轉換為交易日日期
 ●支援格式:
  - 年度:'2023-Y'
  - 季度:'2023-Q1'
  - 月度:'2023-M01'
  - 日期:'2023-01-01'
 ●回傳:ProboDataFrame(index 已轉為交易日日期)

2. last_of_week()
 ●功能:取每週最後交易日對應的資料
 ●回傳:ProboDataFrame

3. first_of_week()
 ●功能:取每週第一交易日對應的資料
 ●回傳:ProboDataFrame

4. last_of_month()
 ●功能:取每月最後交易日對應的資料
 ●回傳:ProboDataFrame

5. first_of_month()
 ●功能:取每月第一交易日對應的資料
 ●回傳:ProboDataFrame

6. reshape(df1, df2)
 ●功能:將兩個 ProboDataFrame 對齊索引與欄位
 ●行為:
  - columns 取交集
  - index 取「兩者共同的日期區間」,即起始日必須同時存在於 df1 與 df2
  - 對於此共同日期區間,缺失值會前向填充(ffill)
  - 自動將不同頻率資料(年、季、月、日)轉為交易日
   回傳:對齊後的兩個ProboDataFrame
   注意:
  - 若 df1、df2 起始日不同,則會以較晚的起始日為起點
  - 適用於不同頻率資料自動對齊,保證運算符號(+、-、>、< 等)正確對應

7. 運算與比較符號自動對齊
 ●功能:支援 +、-、*、/、>、<、>=、<=、==、!= 等運算符號
 ●行為:
  - 自動呼叫 reshape 對齊不同資料
  - columns 取交集,index 前向填充
  - 適用於不同頻率資料自動對齊
  - 例:`日資料 + 月資料` 無需手動 reshape
 ●回傳:ProboDataFrame

使用範例:
con1 = api.MSMP.日_K.adj_Close > 100
con2 = api.MSMP.月_營收.YoY > 10
result = con1 & con2 # 自動對齊 index 和 columns