策略回测报告——动量策略

【量化策略系列基本篇之一】股票动量策略(汇总篇) 1. 前言 1.1 策略简介 “动量”策略中所谓的“动量”,是指所描述对象具有的一种倾向于保持原有属性或特征的一种性质,可以理解为一种“惰性”。在A股票市场中,股票价格的动量是普遍存在的, 1.2 术语简述 (1)简单移动平均线(MA) (2)指数加权移动平均线(EMA) 1.3 记号使用 Γ(z)=∫0∞tz−1e−tdt . \Gamma(z) = \int_0^\infty t^{z-1}e... 阅读详情

策略全称:简单动量策略
策略简称:动量策略
策略函数:signal_simple_mtm

一、 策略背景
动量指标(MTM)也称为动力指标(Momentum Index)。
在证券市场上有类似于物理学上的恒速原理的现象:如果股价的上涨(下跌)趋势在继续,则股价的上涨(下跌)速度会大体保持一致。
动量指标(MTM)正是从股票的恒速原理出发,考察股价的涨跌速度,以股价涨跌速度的变化分析股价趋势的指标。
信号构建方法1:
  1.MTM=当日收盘价-N日前收盘价
  2.MTMMA=MTM的M日移动平均
  3.参数N一般设置为12日参数M一般设置为6
应用法则
  1.MTM从下向上突破MTMMA,为短期买入信号。
  2.MTM从上向下跌破MTMMA,为短期卖出信号。
  3.股价在上涨行情中创出新高点,而MTM未能配合上升,出现背离,为卖出信号;股价在下跌行情中走出新低点,而MTM未能配合下降,出现背离,为买入信号。
  4.若股价与MTM在低位同步上升,显示短期将有反弹行情;若股价与MTM在高位同步下降,则显示短期可能出现股价回落。
  缺点:震荡趋势中,MTMMA附近开平仓太频繁

信号构建方法2:
1、MTM=(当日收盘价-N日前收盘价)/ N日前收盘价
2、上轨:p/100 , 下轨:-p/100
3、MTM突破上下轨开仓
信号构建方法3:
构建方法2基础上加个MTMMA作为中轨,平仓
缺点:多一个参数
信号构建方法4:
基于MTMMA构建子布林
1、MTM=(当日收盘价-N日前收盘价)/ N日前收盘价(注意:和构建方法1不同,这里是比例)
1.1 J神对MTM进行一次平滑得到mtm_mean,然后再计算median
2.MTMMA=MTM的M日移动平均(median)
3.计算std mtm到mtmma标准差
4、设置倍数(常数,或者自适应)
本质就是上涨速度(n天价格变动)大于一个值,认为可以开仓

二、 策略的逻辑和本质
1、策略为什么赚钱?
基础假设:速度会延续(趋势)
2、策略赚的是什么钱?
开仓信号出现后,close同向趋势延续的钱
3、在什么情况下会失效?
开仓信号出现后,持仓状态(MTM没有降到平仓位置),close持平或下降

N日前处于盘整(close差不多),近日处于突破后盘整(当日附近close差不多),也能保持一段时间开仓,但不盈利
N日前处于下跌(close下降),近日处于反转后盘整或小幅下跌,mtm也保持为正
N日前处于小幅上涨,近日处于盘整,会更快平仓
总之,动量策略适合突破后有延续性趋势的行情,震荡行情是失效的

3.1个别参数有限期失效
简单自适应动量策略(非布林上下轨)(伪自适应版)
注意:df.loc[df[‘mtm’] > df[‘up_p’]/100, ‘signal_long’] = 1
生成信号时,有个/100,这里相当于一个参数,没有完全自适应
但/100的效果还相当不错,对应简单动量策略的p值,是要比较小的,在比较小的p值上就开仓
与0做分界线比较,0做分界,无效开仓太多

spot:2017-08-17 04:00:00 至2021-08-31 23:55:00(全部)
para equity_curve test_buy_long_times test_sell_short_times 累计交易次数 年化收益 最大回撤 sharpe 最大回撤开始时间 最大回撤结束时间
37 [760] 798.652080 40.0 40.0 80.0 4.258945 -0.740367 5.752476 0.0 2021-07-16 08:00:00
8 [180] 416.679496 157.0 155.0 312.0 3.474211 -0.796166 4.363679 0.0 2021-06-03 20:00:00
38 [780] 330.673038 27.0 24.0 51.0 3.224525 -0.811912 3.971520 0.0 2021-07-22 08:00:00
spot:2017-08-17 04:00:00 至2020-08-31 23:55:00(魔2期标准)
para equity_curve test_buy_long_times test_sell_short_times 累计交易次数 年化收益 最大回撤 sharpe 最大回撤开始时间 最大回撤结束时间
37 [760] 72.090135 36.0 36.0 72.0 3.132348 -0.650742 4.813499 0.0 2019-08-28 20:00:00
4 [100] 72.195490 197.0 199.0 396.0 3.134350 -0.785001 3.992795 0.0 2018-01-29 00:00:00
38 [780] 44.879141 21.0 19.0 40.0 2.531257 -0.655567 3.861171 0.0 2019-08-28 20:00:00
8 [180] 20.382184 118.0 116.0 234.0 1.717915 -0.703183 2.443056 0.0 2017-11-14 04:00:00
2020-03-13 03:00:00 至 2021-09-04 23:55:00 (312后,近期)
para equity_curve test_buy_long_times test_sell_short_times 累计交易次数 年化收益 最大回撤 sharpe 最大回撤开始时间 最大回撤结束时间
8 [180] 36.612703 51.0 50.0 101.0 10.898383 -0.796166 13.688590 0.0 2021-06-03 20:00:00
16 [340] 23.956646 16.0 18.0 34.0 7.887684 -0.767430 10.278053 0.0 2021-08-01 16:00:00
14 [300] 22.028770 23.0 22.0 45.0 7.389336 -0.722400 10.228873 0.0 2021-05-23 20:00:00
三个时间段,180是穿越牛熊的参数

简单自适应动量策略(非布林上下轨)(真自适应版)
如果要自适应,就是一组样本里,比较贴近0值的数,这个数值
回测过程中发现用max描述,值太大,出信号太少
用min描述有负数,只能用在下轨
想把p自适应掉,选取mtm动量正值里最小的作为开多条件(反之负值里最大的为开空条件)
严格意义上来说,这里还不算完全自适应,还有个与0的比较,如果与1比较呢?

df['up_p'] = df[df['mtm'] > 0]['mtm'].rolling(window=n).min()  # 自适应计算p
df['up_p'].fillna(method='ffill', inplace=True)	# 不用fill,mtm>0时一定会有up_p值

回测中发现:
因为up_p选择大于0的最低点,一出现mtm正数,基本都会开仓,除非第一次出现的n天内最低值,这时mtm=up_p,不会开仓

spot:2017-08-17 04:00:00 至2021-08-31 23:55:00(全部)在这里插入图片描述

两个参数高原180附近和750附近
df[‘mtm’] > 1
在这里插入图片描述
df[‘mtm’] > 2
在这里插入图片描述
df[‘mtm’] > 3

在这里插入图片描述

df[‘mtm’] > 4
在这里插入图片描述
df[‘mtm’] > 5
在这里插入图片描述
结论:基准线的值不影响最大回撤和累计净值,只影响交易次数,默认用0

想把0完全自适应掉

  df['mtm_mean'] = df['mtm'].rolling(window=n).mean()  # 求mtm均值
df['up_p'] = df[df['mtm'] > df['mtm_mean']]['mtm'].rolling(window=n).min()  # 自适应计算p

回测效果并不好,mtm动量的定义,和历史情况的相关性,原不如0值
ETH,4H
在这里插入图片描述
ETH,2H
在这里插入图片描述

spot:2017-08-17 04:00:00 至2020-08-31 23:55:00(魔2期标准)
para equity_curve test_buy_long_times test_sell_short_times 累计交易次数 年化收益 最大回撤 sharpe 最大回撤开始时间 最大回撤结束时间
25 [126] 192.824222 149.0 151.0 300.0 4.726822 -0.736834 6.415044 0.0 2019-11-17 04:00:00
30 [151] 214.783737 111.0 118.0 229.0 4.935385 -0.800799 6.163073 0.0 2019-11-20 04:00:00
42 [211] 124.276157 65.0 65.0 130.0 3.950399 -0.682936 5.784436 0.0 2018-02-06 04:00:00
43 [216] 111.283037 60.0 61.0 121.0 3.772367 -0.725487 5.199771 0.0 2019-03-29 20:00:00
27 [136] 122.871335 135.0 135.0 270.0 3.931769 -0.766725 5.128007 0.0 2019-11-15 16:00:00
36 [181] 72.107938 101.0 97.0 198.0 3.132686 -0.728807 4.298377 0.0 2019-02-15 20:00:00
29 [146] 102.669370 127.0 132.0 259.0 3.646537 -0.868681 4.197784 0.0 2019-11-19 00:00:00
33 [166] 72.615940 98.0 102.0 200.0 3.142320 -0.882282 3.561583 0.0 2020-01-11 20:00:00
151 [756] 31.431118 24.0 22.0 46.0 2.137802 -0.659964 3.239268 0.0 2019-08-31 16:00:00
26 [131] 48.487136 158.0 155.0 313.0 2.622992 -0.831349 3.155102 0.0 2019-11-18 08:00:00
2020-03-13 03:00:00 至 2021-09-04 23:55:00 (312后,近期)
para equity_curve test_buy_long_times test_sell_short_times 累计交易次数 年化收益 最大回撤 sharpe 最大回撤开始时间 最大回撤结束时间
36 [181] 102.861212 41.0 35.0 76.0 23.213356 -0.770587 30.124254 0.0 2021-06-03 20:00:00
49 [246] 54.057808 23.0 19.0 42.0 14.555516 -0.710352 20.490569 0.0 2021-05-29 16:00:00
81 [406] 36.373017 5.0 4.0 9.0 10.844752 -0.623506 17.393191 0.0 2021-07-20 00:00:00
37 [186] 48.283799 37.0 35.0 72.0 13.392701 -0.791352 16.923819 0.0 2021-06-03 20:00:00
80 [401] 34.571651 5.0 6.0 11.0 10.438086 -0.621395 16.797839 0.0 2021-07-20 00:00:00
56 [281] 33.046406 7.0 6.0 13.0 10.088557 -0.623693 16.175505 0.0 2021-08-03 16:00:00
35 [176] 33.878617 48.0 43.0 91.0 10.279878 -0.727873 14.123172 0.0 2021-03-26 08:00:00
44 [221] 32.309249 31.0 28.0 59.0 9.917828 -0.774785 12.800742 0.0 2021-05-28 20:00:00
43 [216] 32.729222 28.0 26.0 54.0 10.015243 -0.794560 12.604760 0.0 2021-07-07 08:00:00
61 [306] 24.734830 5.0 3.0 8.0 8.085263 -0.656846 12.309224 0.0 2021-08-04 08:00:00
结论180参数在4H周期表现亮眼
看看2H周期
spot:2017-08-17 04:00:00 至2021-08-31 23:55:00(全部)
para equity_curve test_buy_long_times test_sell_short_times 累计交易次数 年化收益 最大回撤 sharpe 最大回撤开始时间 最大回撤结束时间
86 [431] 1647.456483 122.0 125.0 247.0 5.293814 -0.695911 7.607027 0.0 2021-05-31 02:00:00
85 [426] 889.396884 140.0 139.0 279.0 4.400382 -0.689690 6.380235 0.0 2021-05-22 12:00:00
76 [381] 910.304335 161.0 158.0 319.0 4.431636 -0.861742 5.142648 0.0 2021-06-03 08:00:00
72 [361] 880.339053 192.0 187.0 379.0 4.386671 -0.857116 5.117941 0.0 2019-02-14 00:00:00
59 [296] 429.370341 226.0 226.0 452.0 3.506908 -0.814137 4.307515 0.0 2019-11-20 06:00:00
spot:2017-08-17 04:00:00 至2020-08-31 23:55:00(魔2期标准)
基本在400附近,符合预期,是4H参数的2倍

para equity_curve test_buy_long_times test_sell_short_times 累计交易次数 年化收益 最大回撤 sharpe 最大回撤开始时间 最大回撤结束时间
86 [431] 142.027369 81.0 81.0 162.0 4.173252 -0.686319 6.080633 0.0 2018-02-06 06:00:00
60 [301] 164.329031 175.0 168.0 343.0 4.429614 -0.743891 5.954657 0.0 2019-11-20 06:00:00
85 [426] 67.948464 93.0 92.0 185.0 3.051187 -0.686471 4.444745 0.0 2018-02-06 06:00:00
59 [296] 87.739345 162.0 161.0 323.0 3.409575 -0.814137 4.187961 0.0 2019-11-20 06:00:00
76 [381] 75.321835 117.0 113.0 230.0 3.191981 -0.766220 4.165882 0.0 2019-02-10 22:00:00
2020-03-13 03:00:00 至 2021-09-04 23:55:00 (312后,近期)
para equity_curve test_buy_long_times test_sell_short_times 累计交易次数 年化收益 最大回撤 sharpe 最大回撤开始时间 最大回撤结束时间
72 [361] 109.431141 56.0 51.0 107.0 24.253967 -0.619760 39.134429 0.0 2021-06-03 08:00:00
85 [426] 55.767001 47.0 45.0 92.0 14.885258 -0.689690 21.582543 0.0 2021-05-22 12:00:00
86 [431] 53.409738 36.0 38.0 74.0 14.420380 -0.695911 20.721588 0.0 2021-05-31 02:00:00
88 [441] 47.762706 43.0 39.0 82.0 13.279719 -0.705608 18.820253 0.0 2021-05-28 22:00:00
73 [366] 46.849132 62.0 57.0 119.0 13.091318 -0.723944 18.083339 0.0 2021-06-03 08:00:00
431表现稳定

叠加因子效果也不明显
在这里插入图片描述

叠加母布林效果不够好(估计是181参数太大,需要k线太多了)
在这里插入图片描述

mtm_bolling_adapt
mtm构建布林自适应(mtm平滑后)(J神动量自适应基础)
spot:2017-08-17 04:00:00 至2020-08-31 23:55:00(魔2期标准)
para equity_curve test_buy_long_times test_sell_short_times 累计交易次数 年化收益 最大回撤 sharpe 最大回撤开始时间 最大回撤结束时间
3 [4] 7.973358 1031.0 1048.0 2079.0 0.988225 -0.977047 1.011441 0.0 2020-08-14 00:00:00
32 [33] 6.623642 129.0 129.0 258.0 0.872109 -0.893672 0.975871 0.0 2019-03-27 20:00:00
28 [29] 5.790585 144.0 155.0 299.0 0.790483 -0.861934 0.917104 0.0 2017-12-11 20:00:00
2020-03-13 03:00:00 至 2021-09-04 23:55:00 (312后,近期)
para equity_curve test_buy_long_times test_sell_short_times 累计交易次数 年化收益 最大回撤 sharpe 最大回撤开始时间 最大回撤结束时间
65 [66] 1.649749 27.0 31.0 58.0 0.411052 -0.753542 0.545493 0.0 2021-07-27 00:00:00
29 [30] 1.413910 58.0 59.0 117.0 0.269001 -0.953898 0.282002 0.0 2021-02-24 08:00:00
63 [64] 1.048109 23.0 34.0 57.0 0.032846 -0.713986 0.046004 0.0 2021-04-07 20:00:00
[4] 累计净值: 8.779187740459618e-05 年化收益: -0.9984017108822286 最大回撤 -0.9999411318784476 年化收益回撤比: -0.9984604883756236 交易次数: 1097
[4]在魔2期回测区间表现优异,J神v3策略叠加因子后效果炸裂,是mtm构建布林自适应优秀表现为基础的
但[4]参数稳定性不足,在312后全面失效

根据简单mtm自适应经验,mtm的分布应该是围绕0,而不是围绕平均值:
在这里插入图片描述
修改mtm_bolling_adapt中:df[‘median’] = 0
修改前:(df[‘median’] = df[indicator].rolling(window=n).mean())和J神v3不叠加因子,不加母布林完全一致
在这里插入图片描述
修改后:(df[‘median’] = 0)
在这里插入图片描述
回测结果全面提升
可是叠加三因子后没有特殊效果了,叠加母布林也没有特殊效果。。。
在这里插入图片描述
不叠加因子,只叠加母布林有效(筛选掉不合理交易)
在这里插入图片描述

动量布林后,不平滑mtm反而效果不好
在这里插入图片描述

mtm不平滑本身效果更好点,但叠加因子后不行
mtm构建布林自适应(mtm不平滑)(J神动量自适应基础)
para equity_curve test_buy_long_times test_sell_short_times 累计交易次数 年化收益 最大回撤 sharpe 最大回撤开始时间 最大回撤结束时间
47 [48] 103.923900 297.0 283.0 580.0 3.665292 -0.695734 5.268237 0.0 2017-11-12 20:00:00
45 [46] 79.650551 305.0 293.0 598.0 3.271323 -0.736293 4.442964 0.0 2018-05-10 04:00:00
46 [47] 86.271586 300.0 281.0 581.0 3.385956 -0.766588 4.416917 0.0 2017-11-12 20:00:00
J神v3中测试
adaptboll_with_mtm_v3_2para ETH 2 4H all [48, 35]
累计净值: 1.3592
思路:自适应动量策略(非布林上下轨),能否叠加因子?

简单动量
spot:2017-08-17 04:00:00 至2021-08-31 23:55:00(全部)
para equity_curve test_buy_long_times test_sell_short_times 累计交易次数 年化收益 最大回撤 sharpe 最大回撤开始时间 最大回撤结束时间
38 [12, 153] 120.643508 533.0 530.0 1063.0 2.285322 -0.879306 2.599007 0.0 2020-07-20 16:00:00
43 [12, 173] 110.713876 505.0 504.0 1009.0 2.215976 -0.854222 2.594144 0.0 2020-07-20 16:00:00
40 [12, 161] 90.565345 518.0 518.0 1036.0 2.059453 -0.883645 2.330632 0.0 2020-07-20 16:00:00
以上参数范围太小
para equity_curve test_buy_long_times test_sell_short_times 累计交易次数 年化收益 最大回撤 sharpe 最大回撤开始时间 最大回撤结束时间
249 [180, 197] 856.155347 97.0 97.0 194.0 4.350552 -0.881116 4.937547 0.0 2017-11-14 20:00:00
247 [180, 189] 646.143499 101.0 101.0 202.0 3.989307 -0.881116 4.527561 0.0 2017-11-14 20:00:00
243 [180, 173] 584.009899 105.0 107.0 212.0 3.865573 -0.882144 4.382021 0.0 2017-11-14 20:00:00

简单动量自适应
para equity_curve test_buy_long_times test_sell_short_times 累计交易次数 年化收益 最大回撤 sharpe 最大回撤开始时间 最大回撤结束时间
37 [760] 798.652080 40.0 40.0 80.0 4.258945 -0.740367 5.752476 0.0 2021-07-16 08:00:00
8 [180] 416.679496 157.0 155.0 312.0 3.474211 -0.796166 4.363679 0.0 2021-06-03 20:00:00
38 [780] 330.673038 27.0 24.0 51.0 3.224525 -0.811912 3.971520 0.0 2021-07-22 08:00:00

简单动量平滑后自适应
para equity_curve test_buy_long_times test_sell_short_times 累计交易次数 年化收益 最大回撤 sharpe 最大回撤开始时间 最大回撤结束时间
3 [80] 653.894146 56.0 55.0 111.0 4.004105 -0.864507 4.631664 0.0 2019-11-21 00:00:00
4 [100] 28.811025 43.0 42.0 85.0 1.304256 -0.902556 1.445070 0.0 2019-11-29 12:00:00
1 [40] 16.331729 115.0 114.0 229.0 1.001232 -0.974702 1.027219 0.0 2020-12-29 00:00:00
5 [120] 7.251049 35.0 34.0 69.0 0.635722 -0.985847 0.644849 0.0 2020-04-07 04:00:00
0 [20] 2.015989 233.0 232.0 465.0 0.189039 -0.902777 0.209397 0.0 2018-01-20 20:00:00
8 [180] 2.120587 19.0 18.0 37.0 0.205276 -0.987066 0.207966 0.0 2020-11-03 00:00:00
38 [780] 0.000000 4.0 3.0 7.0 -1.000000 -1.000000 -1.000000 0.0 2021-09-04 20:00:00
参数孤岛,只有前6个参数是正期望
参数集中在60-80附近
para equity_curve test_buy_long_times test_sell_short_times 累计交易次数 年化收益 最大回撤 sharpe 最大回撤开始时间 最大回撤结束时间
39 [80] 653.894146 56.0 55.0 111.0 4.004105 -0.864507 4.631664 0.0 2019-11-21 00:00:00
38 [78] 612.088732 54.0 53.0 107.0 3.922657 -0.882516 4.444855 0.0 2021-07-30 00:00:00
32 [66] 541.203625 62.0 61.0 123.0 3.774441 -0.925467 4.078417 0.0 2021-07-26 16:00:00
33 [68] 491.551192 58.0 57.0 115.0 3.661676 -0.955643 3.831637 0.0 2021-07-26 16:00:00

MTM保持正值,但不会盈利
开仓信号出现后,
  附录:几种指标形成信号的方法
  1、设置上下轨(常数、标准差倍数、自适应方法),指标突破上下轨作为信号
  2、设置中轨(平滑均线),指标突破中轨开仓或平仓

量化金融分析AQF(9):动量策略-Momentum Strategy 目录 一、动量策略描述 1.1 策略思想 1.2 过去收益好的定义 二、动量策略代码实现 1. 数据准备 2. 策略开发思路 3. 策略可视化 4. 策略优化之思路——参数优化和穷举 5. 参数寻优——使用离散Return计算方法 一、动量策略描述 1.1 策略思想 动量效应:由Jegadeesh和Titman(1993)提出,他们认为:股票的收益率有延续原... 阅读详情

相关推荐

金融量化— 动量策略(Momentum Strategy)

什么是动量效应和动量交易策略? 动量效应是指过去收益较高的资产,在未来一段时间内仍获得较高的收益,过去收益较低的资产在未来仍获得较低的收益。对于动量效应现象的解释,传统金融学认为,动量效应的存在并不是市场无效的证据,并试图从理性风险补偿这一角度对其进行解释;而行为金融学认为动量效应是由投资者的非理性行为和反应不足影响的。虽然两种学说的理论依据有所不同,但都从不同方面解释了动量效应的存在,这为动量效应的研究奠定了理论基础,也为投资者寻找套利机会提供了依据。 1. 引库 import numpy as np i

帅泽泽的博客 9945

动量策略——yyds

今天来看一看什么叫yyds! 动量策略是一个古老的策略了,说白就是“追涨杀跌”。 这在投资里不算什么好词,大家通常这样形容“韭菜”,但是如果你能一如继往的坚持,效果可能不一样。 设定好规则,交给机器做,这完全不是一码事。 不说废话,先上结果: 近十年,年化25.6%,最大回撤才21.1%,夏普比接近1.3。 而年化最高的创业板指数年化11.1%,最大回撤达到69.7%。 策略特别简单,就使用了一个指标——20日动量。 我们在表达式里,添加了一个变量Return($close,N),即计算

weixin_38175458的博客 3659

015 | backtrader回测动量策略

动量策略(Momentum Strategy)是一种基于资产价格或收益动量的交易策略。动量策略假设“强者恒强,弱者恒弱”,即近期表现强劲的资产在未来仍可能延续其趋势,而近期表现疲软的资产在未来可能继续走弱。因此,动量策略的核心思想是买入那些表现良好的资产,卖出或做空表现不佳的资产。起始资金:100,000元最终资金:101,831.91元策略表现:回测结果显示,动量策略在此段时间内实现了小幅盈利,资金增加了约1,831.91元。尽管策略频繁买卖,最终的盈利结果表明该策略在这个特定时间段内有效。

微信号:RunsenLiu 1590

【量化】策略交易之动量策略(Momentum)

动量策略是一种基于"强者恒强"理念的交易方法,通过追踪资产过去表现来预测未来走势。本文以DOGE/USDT为例,展示了该策略的Python实现:1) 计算过去10根K线收益率作为动量指标;2) 正收益时买入,负收益时卖出;3) 记录交易盈亏并绘制收益曲线。代码包含完整的交易信号生成、持仓管理和绩效评估功能。测试结果显示策略能有效捕捉趋势,但需注意动量策略在震荡行情中可能表现不佳。该实现可直接应用于其他加密货币交易对,为量化交易者提供了一个可扩展的框架。

ZFJ_张福杰 2216

动量因子策略的量化回测框架搭建指南

本指南系统性解析动量因子策略的量化回测框架搭建全流程,覆盖从理论基础到工程实现的核心环节。通过第一性原理推导动量效应的行为金融学基础,构建包含数据层、策略层、执行层、评估层的四层架构模型,结合Python代码实现关键模块(如动量计算、信号生成、成本模拟),并深入讨论回测中的常见陷阱(如数据泄露、过拟合)与优化策略。内容兼顾学术深度与工程实践,为量化研究者提供从0到1搭建可生产级回测系统的完整技术路径。数据质量:如何处理前复权、缺失值、幸存者偏差?策略逻辑:动量窗口(J)与持有期(K)如何选择?

2501_92132293的博客 1095

量化交易 _ 动量因子策略回测结果大公开,年化30%

动量”是抽象概念,需要转化为可计算的“因子”(Factor)。

AI天才研究院 3451

LEAN回测引擎深度解析:如何用Jupyter Notebook验证你的交易策略

LEAN回测引擎是QuantConnect推出的开源交易策略测试框架,而Jupyter Notebook则是数据科学领域广泛使用的交互式开发环境。将两者结合,能为量化交易者提供从策略编写、数据验证到回测分析的完整工作流。本文将详细介绍如何利用Jupyter Notebook高效验证你的交易策略,帮助新手快速掌握量化回测的核心技能。 ## 为什么选择LEAN与Jupyter Notebook组合?

gitblog_01198的博客 1052

A股多维度量化择时系统构建与回测实战:基于backtrader的完整路径

量化交易中,择时系统决定了资金在不同市场状态下的配置效率。传统的单指标择时往往因市场风格切换而过拟合失效,多维度量化择时通过融合趋势、量能、资金、情绪与估值等多个视角,以信号合成机制提升决策的稳健性。基于开源回测框架backtrader,可以高效完成多股同步回测、因子验证与参数敏感性分析,真实评估策略在手续费、滑点及涨跌停约束下的表现。这一技术路径不仅适用于个人投资者搭建可迭代的A股量化系统,也为量化研究岗位提供了从信号体系设计到绩效归因的工程化参考。本文围绕A股多维度量化择时系统构建与回测的完整流程展开,

weixin_30843121的博客 461

Open Interpreter金融建模实战:量化策略编写与回测

本文介绍了如何在星图GPU平台上自动化部署open interpreter镜像,赋能金融量化建模。用户可通过自然语言指令快速实现量化策略编写与回测,典型应用场景包括A股动量轮动策略的全周期回测、净值分析与可视化报告生成,显著降低编程门槛并提升研究效率。

weixin_36431145的博客 332

1014. 福尔摩斯的约会 (20)-PAT乙级真题

1014. 福尔摩斯的约会 (20) 大侦探福尔摩斯接到一张奇怪的字条:“我们约会吧!3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm”。大侦探很快就明白了,字条上奇怪的乱码实际上就是约会的时间“星期四 14:04”,因为前面两字符串中第1对相同的大写英文字母(大小写有区分)是第4个字母’D’,代表星期四;第2对相同的字符是’

柳婼 の blog 2644

Python+Selenium实战:5分钟搞定快手评论区数据采集(附完整代码)

本文详细介绍了如何使用Python和Selenium快速采集快手评论区数据,提供完整的代码实现和优化方案。通过动态加载处理和智能等待策略,5分钟内即可构建高效的评论采集工具,适用于用户行为分析和内容挖掘等场景。

weixin_30415113的博客 342

A股量化策略日报(2026年06月30日)

数据: 2026-06-05 ~ 2026-06-29,1514根3分钟K线,15个交易日样本内: 2026-06-05 ~ 2026-06-18(10天)样本外: 2026-06-22 ~ 2026-06-29(5天,跳过破损的6/25)

idingzhi的博客 322

利用PLECS实现Boost变换器的闭环控制仿真与优化

本文详细介绍了如何利用PLECS仿真软件实现Boost变换器的闭环控制与优化。从基础原理到开环系统搭建,再到闭环控制设计与动态优化,提供了完整的仿真实践指南。通过PLECS的仿真功能,工程师可以有效诊断问题、优化参数,并实现高性能的DC-DC变换器设计。

weixin_42527401的博客 323

A股量化策略日报(2026年07月22日)

预计2026年8月启动(已公告待发生)月之暗面计划于8月启动上市前最后一轮融资,投前估值500亿美元东方财富网(引用《科创板日报》) | 新浪财经已公告待发生AI算力、芯片板块持续受资金关注。

idingzhi的博客 444

PLSQL Developer新手必看:如何避免安装过程中的常见坑

本文为PL/SQL Developer新手提供了详尽的安装与配置避坑指南。从版本选择、注册码使用、汉化包安装到Oracle客户端连接配置,逐一解析常见问题并提供解决方案,帮助开发者快速搭建稳定的PL/SQL开发环境,顺利开启Oracle数据库编程工作。

g9h0i1的博客 649

OpenClaw与Ollama本地AI部署指南

AI模型本地化部署是当前企业数字化转型的关键技术,通过开源框架Ollama可以在消费级硬件上运行大语言模型。本文以OpenClaw多智能体系统为例,详解从环境配置到模型优化的全流程实践,特别针对国内开发者遇到的网络问题提供了镜像加速等解决方案。这种私有化部署方案尤其适合金融数据分析、企业知识管理等对数据安全要求高的场景,通过模块化设计实现多智能体协作,同时保持对NVIDIA显卡和普通CPU的兼容性。

weixin_34302561的博客 396

A股量化策略日报(2026年07月23日)

策略名称: 高股息价值股等权持有 + 股息立即复投回测区间: 2024-01-02 ~ 2026-07-22(617个交易日)初始资金: 100,000元交易成本: 佣金0.03% + 印花税0.1% + 股息税10%基准: 上证综合指数(sh000001)

idingzhi的博客 283

3D视觉-结构光测量-线结构光测量

线结构光测量中,由激光器射出的激光光束透过柱面透镜扩束,再经过准直,产生一束片状光。这片光束像刀刃一样横切在待测物体表面,因此线结构光法又被成为光切法。线结构光测量常采用二维面阵CCD作为接受器件,因此只要通过增加垂直于面阵探测器的第三维度方向,就可以实现对三维物体的测量。

qq_20660115的博客 3121

A股量化策略日报(2026年07月15日)

本策略基于巴菲特/芒格价值投资原则,筛选10只高股息龙头股进行等权重配置,配合股息立即复投获取复利效应。选股核心标准:国有大行(制度性护城河)+ 优质能源/公用事业(稳定现金流)。

idingzhi的博客 485

YOLOv13涨点改进 | 全网独家创新、HyperACE改进、注意力改进篇 | CVPR 2025| 引入LRSA局部区域自注意力模块,能提升其在细节捕捉、小目标检测和长距离依赖建模方面的能力

本文提出将LRSA(局部区域自注意力)模块集成到YOLOv13中,通过局部特征交互增强细节捕捉能力、小物体检测精度和长距离依赖建模。LRSA模块采用重叠图像块处理策略,在保持计算效率的同时提升复杂背景下的检测性能。文章详细介绍了模块结构、原理优势,并提供了三种改进方案:1)在主干网络添加LRSA层;2)将关键模块替换为DSC3k2_LRSA;3)采用HyperACE_LRSA结构。配套提供了完整的PyTorch实现代码和YAML配置文件,展示了该模块如何通过局部注意力机制平衡检测精度与推理速度。

Ai缝合怪、助力小伙伴高效发论文 343

沉降预测算法-指数曲线法

沉降预测的指数曲线法原理和代码实现

yh523的博客 1009

【手把手教你】基于均线排列的价格动量策略回测

01引言动量策略是通过利用市场波动从现有趋势的延续中获利。简单来说,高买高卖,反之亦然(“低买高卖”是均值回归策略思想,与动量策略相反)。价值投资通常基于均值的长期回归,而动量投资基于均值回归发生之前的时间间隔。通常而言,基于过去回报(价格动量策略)或收益意外(称为收益动量策略)的策略是利用市场对不同信息的反应不足。换句话说,收益动量策略是基于对短期收益相关信息的反应不足中获利,而价格动量策略是基...

Python金融量化 2627

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Python编写动量交易策略

目录1. 概念介绍2.计算动量2.1 作差法求动量2.2 作除法求动量3.定义求动量与作图函数4. 绘制K线图与动量图5. 动量交易策略的制定 1. 概念介绍 动量交易策略,即Momentum Trading Strategy。在经典力学里,动量即物体质量和速度的乘积,动量一方面描述了物体的运动状态,另一方面也描述了惯性的大小。 在证券市场上,我们也可以把“证券的价格”类比成运动的物体,价格上涨时,可以说价格有着上涨的动量,价格下跌时其具有下跌的动量。这种动量可能会使上涨或下跌继续维持下去,也可能该动量会越

侯小啾技术博客 6394

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

手把手教你用Python搭建自己的量化回测框架【均值回归策略】

1引言大部分量化策略都可以归类为均值回归与动量策略。事实上,只有当股票价格是均值回归或趋势的,交易策略才能盈利。否则,价格是随机游走的,交易将无利可图。均值回归是金融学的...

Python金融量化 1万+

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

量化实战:复合动量策略滚动回测全流程公开(附源码)

今天我分享一个复合动量策略的滚动回测方法,用Python和backtrader工具测试Solana加密货币。结合价格、成交量和RSI信号,加上追踪止损,避开市场波动,让你5分钟上手量化交易。

weixin_70955880的博客 1933
上一篇: Python 浅拷贝、深度拷贝、函数传参
下一篇: pandas将一列中重复值替换为空值(nan)
779醒
博客等级 码龄8年 42粉丝 141原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

779醒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值