作者a76126 (123)
看板Stock
标题[心得] 2023使用机器学习选股的年报
时间Mon Jan 1 22:37:56 2024
过去每年都是自己凭感觉玩,处於那种赚了抱不住,赔了一停损马上涨
只会google以为kd<20可以进场,kd>80准备要出场
或是觉得营收很好欸,结果进场一路崩
最後搞到赚的吐回去甚至还赔,然後就心态崩溃不玩了,但过一阵子又手痒那种轮回
所以我自认我没有玩股票的天分,那所幸我研究所玩过一点机器学习(但不是用在股票)
就想说自己搞不懂,那我就让机器模型帮我搞懂,跟我讲要买什麽就好
以下纪录2023年的过程,但其实模型2022年8月开始实战,那时候是125万
2023年开始成本:141万
年底损益:43万+18万股息
对帐单:
https://upload.cc/i1/2024/01/01/AYbTO4.png
选股买卖周期:每个月all in
Input:一点点基本面+一堆技术指标共45个特徵
Training范围:2005~2015
Testing范围:2016~2022/7
模型:Weighted Ensemble
(类神经网路+XGBRegressor+ARDRegression+KNeighborsRegressor+ExtraTreesRegressor)
Output:模型Ranking後推荐的TOP 3分散投资
过滤:剔除交易金额1千万以下的个股
(後来还是觉得金额还是太少,但再滤,资料量胜率跟报酬率都会降)
心得:
1.相信模型,很多时候推荐出来我心里都os,师傅真的要这样买吗,kd钝化了欸
结果过程中间可能会赔,但最後就是会赚
2.找出场机制,因为买卖周期是1个月,但回头看其实不一定是卖在相对最佳的时间点,
一开始我逼自己严守纪律一定要时间到才卖,但少赚很多
後来自己套用一些开头写的那种kd简单规则进行出场,并且做一些变化回测看看
结果那种google的到的规则突然有用了
这边也可以分享"交易量"是最重要的,什麽规则几乎都要配合量来看
3.整体绩效来说应该有赢0050,截止10月也还赢正2,但不知道为何11月开始上涨这一波
模型选的股票没跟到,导致绩效输正2,有点小灰心,觉得自己在忙什麽
可能随时做好模型失效的准备
以上
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 49.158.68.138 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Stock/M.1704119878.A.8CA.html
1F:推 seemoon2000 : 线型选股策略在完全的多头年 小输正二还好吧... 01/01 22:44
2F:推 waitrop : 模型在大多头跟大空头年都会失真,因为这是特殊事件 01/01 22:47
3F:→ waitrop : 模型一般在普通年份会表现比较好也比较准,我认为 01/01 22:48
4F:推 ctttttt : 不熟模型 但这样应该也是在trade策略吗,那应该会 01/01 22:51
5F:→ ctttttt : 有吞吐量的问题,输正二也还好 你等於拿去跟杠杆比 01/01 22:51
6F:→ ctttttt : ,那你也可以拿你的策略去开杠。 01/01 22:51
7F:推 topfree : 大多头年输正二就算了啦..盘整跟空头年赢回来就好了 01/01 22:53
8F:推 cpz : 有没有一种可能面对有趋势的需要另一种指标? 01/01 22:55
9F:→ cpz : 大多头跟大空头才是鱼身 01/01 22:56
10F:推 SRNOB : 有没有入门推荐? 01/01 23:17
11F:→ a76126 : 我漏掉最重要的心得,就是今年是多头年... 01/01 23:18
12F:→ a76126 : 模型没经过空头洗礼过...还需要更多时间验证 01/01 23:19
13F:→ techo : 结论买正二就好? 困罢数钱 XD 01/01 23:58
14F:→ midas82539 : 他是前测2005~2015然後後测2016~2022验证是否有效 01/02 00:15
15F:→ midas82539 : 机器学习我不懂就从略,不过还是讲一下 01/02 00:17
16F:→ midas82539 : 理论模型本来就不可能达到100%效率,你回头看只是 01/02 00:17
17F:→ midas82539 : 因为你看到"未来"走势才能评断的,模型当下不会知道 01/02 00:19
18F:→ shmim : 只有我觉得成本141万股息18万很诡异吗 台股有那麽 01/02 00:41
19F:→ shmim : 多殖利率超过10%还填息的股票? 01/02 00:41
20F:→ wang111283 : 绩效输+2不是问题 如果DD也比+2损更多才是没用 01/02 00:41
21F:推 ivan1116 : 推 希望可以看到长期分享 很有趣 01/02 00:45
22F:推 cwts : 推 01/02 01:13
23F:推 linfuon : 股息18万是用了榨汁的玩法吧 领息一档後去领下一档 01/02 01:54
24F:→ linfuon : 大多头年用这招很爽 填息率愈高周转率也可愈高 01/02 01:55
25F:推 csluling : 我看盘整盘Ai要怎麽玩 01/02 04:12
26F:推 psgbpsgb : 如果永远都涨确实会赢呀 毕竟回调後 下次往回涨一定 01/02 04:38
27F:→ psgbpsgb : 比前一次高 01/02 04:38
28F:推 GoGoD : 你试试[KD钝化]买入条件,会不会绩效大爆发? 01/02 05:06
29F:推 zero7810 : 回测就知道答案了 01/02 05:15
30F:推 y800122155 : 你有做cross validation吗? 还有你怎麽判断模型处於 01/02 05:22
31F:→ y800122155 : overfitting还是underfitting? 你data选的时间区间 01/02 05:22
32F:→ y800122155 : 的逻辑是? 01/02 05:22
33F:推 phoenixtwo : 因为他周期是月 所以股息才这麽少 01/02 06:44
34F:→ phoenixtwo : 可以考虑部分用年做交易周期 01/02 06:45
35F:推 pacino : 模型不准,不就是data set有问题? 简单来说, 你的 01/02 06:50
36F:→ pacino : 资料不就只是筹码面? 01/02 06:50
37F:→ pacino : 例如,你的模型怎麽判断AMD的AI晶片能不能追上NVDA 01/02 06:52
38F:→ pacino : ?第几季开始影响? 01/02 06:52
39F:→ liton : 你赚的是beta 01/02 07:14
40F:推 x221x221 : 真麻烦 全丢00929就好 01/02 07:22
41F:推 tompi : 推一个 01/02 07:57
42F:推 PitzMan : 推AI机器人模型操股LoL 01/02 08:20
43F:推 Wishmaster : 我觉得你的模型如果2022,2023都是赚那值得参考 01/02 08:49
44F:→ tsuneo : 多头年就看敢不敢压而已 01/02 09:01
45F:推 GiPaPa : 虽然你有赚 不过train/validation最好别这样切 01/02 09:17
46F:推 sky22485816 : 你模型是做分类任务 然後把output Ranking? 01/02 09:47
47F:→ sky22485816 : 四十几个特徵都是价格衍生技术指标? 01/02 09:49
48F:→ sky22485816 : 不考虑将股票池做类股分群吗? 01/02 09:49
49F:推 patricktu : dd多少 01/02 09:51
50F:→ sky22485816 : 资料 也可以考虑用TimeSeries CV来切 01/02 09:51
51F:→ sky22485816 : 噢 没看清 你是做Regression 01/02 09:59
52F:推 ninet : 股市走多头,怎麽买都会赢,走空头,怎麽买都会输, 01/02 10:21
53F:→ ninet : 说到底还是本多终胜 01/02 10:21
54F:推 libramog : 输入只有kd资料做学习吗? 01/02 10:33
55F:嘘 su27 : 我去年十月买股 至今没一档不赚的,你先等你模型能 01/02 10:34
56F:→ su27 : 躲过开头再说 01/02 10:34
57F:推 abc5555990 : 未来会不会有AI巴菲特 01/02 10:40
58F:推 moboo : 其实这绩效只证明你是白忙一场,根本选不赢人类啊 01/02 10:47
59F:→ moboo : 选半天跟大盘差不多,风险高很多 01/02 10:47
60F:推 BernieWisman: 别看净报酬 要看Sharpe 01/02 11:35
61F:推 IN : 有书单可以推荐吗? 01/02 11:43
62F:推 sky22485816 : 个人比较喜欢看Calmar Ratio,比较在意风险。 01/02 12:02
63F:推 SentLiTryPay: 推 01/02 12:31
64F:推 ader888 : 请问下单是人工下还是程式下的 01/02 13:17
65F:→ a76126 : 人工下单 dd约10%左右 01/02 13:54
66F:→ a76126 : 我没看书 我直接买线上课程 拿程式回来改 01/02 13:54
67F:→ a76126 : 如何知道有没有overfitting,我只会看traing和vali 01/02 13:58
68F:→ a76126 : dation两者的趋势 01/02 13:59
69F:→ a76126 : 好奇G大不建议这样分割资料是为何呢? 没测到08年吗 01/02 14:01
70F:推 bearching : 印象中cross-validation应该是全部资料去切? 01/02 14:43
71F:→ bearching : 切k段然後拿k-1段train,第k段拿来验证,这样资料 01/02 14:45
72F:→ bearching : 比较不浪费 个人观点是把时间拉长,把每个短期shock 01/02 14:46
73F:→ bearching : 都变成循环的一部分,这样模型应该表现会越来越好 01/02 14:46
75F:→ staytuned74 : 另外你的模型可能有潜在问题 1.生存者偏差 01/02 14:50
76F:→ staytuned74 : 2除权息调整 3太过集中持股,建议放宽持股看敏感性 01/02 14:52