• <blockquote id="p4xxi"><xmp id="p4xxi">

    <em id="p4xxi"></em>
    <abbr id="p4xxi"><noframes id="p4xxi">
    <em id="p4xxi"></em>

    怎樣運用多因素策略來構建強大的加密資產投資組合

    摘要:具體的數據預處理涉及重復值、異常值/缺失值/極端值、標準化和數據頻率的處理。duplicated(subset=[key1,key2,duplicated(subset=[key1,key2,對數據范圍內的所有因子做出如下調整:該方法不足在于,量化領域常用的數據如股票價格、token價格常呈現尖峰厚尾分布,并不符合正態分布的假設,在該情況下采用方法將有大量數據錯誤地被識別為異常值。...

    前言

    書接上回,我們發布了《用多因子策略構建強大的加密資產投資組合》系列文章的第一篇 - 理論基礎篇,本篇是第二篇 - 數據預處理篇。

    在計算因子數據前/后,以及測試單因子的有效性之前,都需要對相關數據進行處理。具體的數據預處理涉及重復值、異常值/缺失值/極端值、標準化和數據頻率的處理。

    一、重復值

    數據相關定義:

    • 鍵(Key):表示一個獨一無二的索引。eg. 對于一份有全部token所有日期的數據,鍵是“token_id/contract_address - 日期”
    • 值(Value):被鍵索引的對象就稱之為“值”。

    診斷重復值的首先需要理解數據“應當”是什么樣子。通常數據的形式有:

    1. 時間序列數據(Time Series)。鍵是“時間”。eg.單個token5年的價格數據
    2. 橫截面數據(Cross Section)。鍵是“個體”。eg.2023.11.01當日crypto市場所有token的價格數據
    3. 面板數據(Panel)。鍵是“個體-時間”的組合。eg.從2019.01.01-2023.11.01 四年所有token的價格數據。

    原則:確定了數據的索引(鍵),就能知道數據應該在什么層面沒有重復值。

    檢查方式:

    1. pd.DataFrame.duplicated(subset=[key1, key2, ...])
    2. 檢查重復值的數量:pd.DataFrame.duplicated(subset=[key1, key2, ...]).sum
    3. 抽樣看重復的樣本:df[df.duplicated(subset=[...])].sample找到樣本后,再用df.loc選出該索引對應的全部重復樣本
    4. pd.merge(df1, df2, on=[key1, key2, ...], indicator=True, validate='1:1')
    5. 在橫向合并的函數中,加入indicator參數,會生成_merge字段,對其使用dfm['_merge'].value_counts可以檢查合并后不同來源的樣本數量
    6. 加入validate參數,可以檢驗合并的數據集中索引是否如預期一般(1 to 1、1 to many或many to many,其中最后一種情況其實等于不需要驗證)。如果與預期不符,合并過程會報錯并中止執行。

    二、異常值/缺失值/極端值

    產生異常值的常見原因:

    1. 極端情況。比如token價格0.000001$或市值僅50萬美元的token,隨便變動一點,就會有數十倍的回報率。
    2. 數據特性。比如token價格數據從2020年1月1日開始下載,那么自然無法計算出2020年1月1日的回報率數據,因為沒有前一日的收盤價。
    3. 數據錯誤。數據提供商難免會犯錯,比如將12元每token記錄成1.2元每token。

    針對異常值和缺失值處理原則:

    1. 刪除。對于無法合理更正或修正的異常值,可以考慮刪除。
    2. 替換。通常用于對極端值的處理,比如縮尾(Winsorizing)或取對數(不常用)。
    3. 填充。對于缺失值也可以考慮以合理的方式填充,常見的方式包括均值(或移動平均)、插值(Interpolation)、填0df.fillna(0)、向前df.fillna('ffill')/向后填充df.fillna('bfill')等,要考慮填充所依賴的假設是否合。
    4. 機器學習慎用向后填充,有 Look-ahead bias 的風險

    針對極端值的處理方法:

    1.百分位法。

    通過將順序從小到大排列,將超過最小和最大比例的數據替換為臨界的數據。對于歷史數據較豐富的數據,該方法相對粗略,不太適用,強行刪除固定比例的數據可能造成一定比例的損失。

    2.3σ / 三倍標準差法

    標準差 體現因子數據分布的離散程度,即波動性。利用 范圍識別并替換數據集中的異常值,約有99.73% 的數據落入該范圍。該方法適用前提:因子數據必須服從正態分布,即 。

    其中,, ,因子值的合理范圍是。

    對數據范圍內的所有因子做出如下調整:

    怎樣運用多因素策略來構建強大的加密資產投資組合

    該方法不足在于,量化領域常用的數據如股票價格、token價格常呈現尖峰厚尾分布,并不符合正態分布的假設,在該情況下采用方法將有大量數據錯誤地被識別為異常值。

    3.絕對值差中位數法(Median Absolute Deviation, MAD)

    該方法基于中位數和絕對偏差,使處理后的數據對極端值或異常值沒那么敏感。比基于均值和標準差的方法更穩健。

    絕對偏差值的中位數

    因子值的合理范圍是。對數據范圍內的所有因子做出如下調整:

    怎樣運用多因素策略來構建強大的加密資產投資組合

    三、標準化

    1.Z-score標準化

    • 前提:
    • 由于使用了標準差,該方法對于數據中的異常值較為敏感

    2.最大最小值差標準化(Min-Max Scaling)

    將每個因子數據轉化為在 區間的數據,以便比較不同規模或范圍的數據,但它并不改變數據內部的分布,也不會使總和變為1。

    • 由于考慮極大極小值,對異常值敏感
    • 統一量綱,利于比較不同維度的數據。

    3.排序百分位(Rank Scaling)

    將數據特征轉換為它們的排名,并將這些排名轉換為介于0和1之間的分數,通常是它們在數據集中的百分位數。*

    • 由于排名不受異常值影響,該方法對異常值不敏感。
    • 不保持數據中各點之間的絕對距離,而是轉換為相對排名。

    其中,, 為區間內數據點的總個數。

    怎樣運用多因素策略來構建強大的加密資產投資組合

    四、數據頻率

    有時獲得的數據并非我們分析所需要的頻率。比如分析的層次為月度,原始數據的頻率為日度,此時就需要用到“下采樣”,即聚合數據為月度。

    下采樣

    指的是將一個集合里的數據聚合為一行數據,比如日度數據聚合為月度。此時需要考慮每個被聚合的指標的特性,通常的操作有:

    • 第一個值/最后一個值
    • 均值/中位數
    • 標準差

    上采樣

    指的是將一行數據的數據拆分為多行數據,比如年度數據用在月度分析上。這種情況一般就是簡單重復即可,有時需要將年度數據按比例歸集于各個月份。

    相關推薦
    国产高潮国产高潮久久久91 | 国产午夜精品久久久久免费视| 色婷婷久久综合中文久久一本| 久久91这里精品国产2020| 久久综合伊人77777麻豆| 人妻无码αv中文字幕久久| 久久青青草原综合伊人| 少妇熟女久久综合网色欲| 亚洲香蕉网久久综合影视| 2021少妇久久久久久久久久| 国产精品青草久久久久福利99 | 三级三级久久三级久久| 久久99国产综合精品免费| 蜜桃麻豆www久久国产精品| 久久91精品国产91久久户| 少妇被又大又粗又爽毛片久久黑人| 人妻无码久久一区二区三区免费| 无码国内精品久久人妻麻豆按摩| 久久九九青青国产精品| 久久久久99精品成人片欧美| 国产精品久久久久a影院| 热久久国产精品| 99麻豆久久久国产精品免费| 亚洲熟妇无码另类久久久| 久久中文字幕视频、最近更新| 91精品免费久久久久久久久| 无码伊人66久久大杳蕉网站谷歌| 亚洲精品tv久久久久久久久久| 国产精品欧美久久久天天影视| 久久亚洲中文字幕精品有坂深雪 | 国产三级精品久久| 久久综合丝袜日本网| 久久香蕉国产线看观看99| 久久电影网2021| 亚洲AV无码久久精品色欲| 午夜欧美精品久久久久久久| 久久综合九色综合久99| 久久综合狠狠色综合伊人| 久久66热人妻偷产精品9| 久久国产乱子伦免费精品| 久久久久久国产精品免费无码|