發表文章

目前顯示的是 9月, 2024的文章

拉普拉斯轉換應用於量化交易

圖片
做交量交易的群組有熱心同學提到拉普拉斯轉換可運用在量化交易。 同時也提供了程式碼。 inputs:     LookbackPeriod(50),    // 回看期,用于计算拉普拉斯变换     LaplaceCoeff(1.0);     // 拉普拉斯变换的衰减系数 (s 值) vars:     i(0),     LaplaceTransformSum(0),   // 拉普拉斯变换的结果     LaplacePrediction(0);     // 最终的预测值 // 初始化拉普拉斯变换的总和 LaplaceTransformSum = 0; // 计算拉普拉斯变换 for i = 0 to LookbackPeriod - 1 begin     // 通过指数衰减的方式来实现拉普拉斯变换的数值近似     LaplaceTransformSum = LaplaceTransformSum + Close[i]  Exp(-LaplaceCoeff  i); end; // 正则化处理,将变换值归一化 LaplaceTransformSum = LaplaceTransformSum / LookbackPeriod; // 预测下一期的价格,假设价格趋向于变换值 LaplacePrediction = LaplaceTransformSum; // 生成交易信号 if Close < LaplacePrediction then     Buy("Laplace Long") next bar at market else if Close > LaplacePrediction then     SellShort("Laplace Short") next bar at market; // 打印拉普拉斯预测值 Print("Laplace Prediction: ", LaplacePrediction); 實際測了一下,覺得 15m比...

投資方法實測 - KD小於20 買入,KD大於80 賣出

圖片
  依KD值買賣的方法,流傳已久。今年認真讀了樂活大叔的心法後,認真看了K棒和指標,發現看起來是有那麼回事,因此最近用寫了程式回測一下。 投資方法 標的:以台指做為指數產品的代表 1)K <20 便買入。只要日K指標成立,就是一次買入訊號。 2)K>20便賣出。只要日K指標成立,就是賣出一次,直到零持倉為止。 程式碼 Inputs: size(20); inputs: Len(9), overBuy(80), overSold(20); Inputs: BuyShiftDay(1), SellShiftDay(1); vars: fastK(0), fastD(0), slowK(0), slowD(0), valueJ(0); Value1 = Stochastic(H, L, C, Len, 3, 3, 1, fastK, fastD, slowK, slowD); If CurrentContracts<size and SlowK[0]<overSold  and slowK[BuyShiftDay]<overSold then buy 1 CONTRACTS next bar at market; If slowK[0]> overBuy  and slowK[SellShiftDay]> overBuy  then sell 1 CONTRACTS TOTAL next bar at market; 回測結果 1)長期是正報酬 2)報表顯示最多會買進 19次 3)觀察圖表,會發現在多頭年時,KD>80有時是賣早而少賺了 4)以四年一循環來看待,也許 2025年用這個投資方法會有很好的績效 * 2021年 100% 勝率,真是令人震奮 5)不是每個月都能賺到錢,總的每年都會賺 理財達人在推薦這方法時,有幾個但書 1)買0050 有配息可以過生活 2)真不得已,該賣也要賣,以確保有足夠的現金流過生活 3)主觀交易會做輔佐,分批買分批賣 這個方法可以當不錯的濾網,可以再研究看看如何優化進出場,還有空間提高投資效率。