返回博客列表

我是怎么用Python写出一个能赚钱的交易策略的?(附真实代码和收益)

从一个「惨痛教训」说起

去年8月,我重仓持有的一只新能源股票连续跌了5天,我硬是没舍得止损,总觉得「明天就会反弹」。结果呢?账户直接腰斩。 那时候我就在想,人性的弱点真的太可怕了——贪婪、恐惧、犹豫,这些情绪让我一次又一次做出错误决策。有没有一种方法,能让机器帮我执行交易,避免情绪干扰? 于是我开始研究程序化交易。踩了无数坑、花了三个月时间,终于写出了我人生中第一个真正能跑出正收益的策略。今天就跟大家分享我的实战经验。

我的第一个策略:双均线交叉

说实话,一开始我走了很多弯路,看了各种高大上的理论,最后发现最简单的方法往往最有效。 我的第一个策略是双均线交叉——当短期均线上穿长期均线时买入,下穿时卖出。这个策略逻辑简单到不可思议:
import pandas as pd
import numpy as np

# 策略核心逻辑
def generate_signals(data, short_window=5, long_window=20):
    # 计算移动平均线
    data['SMA_short'] = data['close'].rolling(window=short_window).mean()
    data['SMA_long'] = data['close'].rolling(window=long_window).mean()
    
    # 生成交易信号
    data['signal'] = 0
    data.loc[data['SMA_short'] > data['SMA_long'], 'signal'] = 1  # 买入
    data.loc[data['SMA_short'] <= data['SMA_long'], 'signal'] = -1  # 卖出
    
    return data
听起来很简单对吧?但你真正回测的时候会发现问题一堆——滑点、交易成本、假信号……我第一次跑完回测年化收益居然是负的!

实战案例:宁德时代的均线策略

痛定思痛,我开始优化策略。我用宁德时代(300750)2022年到2023年的数据做回测,加入了几个关键改进:
  • 加入止损机制:单笔亏损超过5%强制平仓
  • 优化参数:用网格搜索找到最佳均线周期(最后发现5/30比5/20效果好很多)
  • 考虑交易成本:每次交易扣除0.1%的手续费+滑点
优化后的回测结果让我眼前一亮:
指标数值
回测周期2022.1-2023.12(2年)
年化收益率23.6%
最大回撤18.3%
胜率61.2%
交易次数47次
坦白说,这个收益比我手动交易强多了,而且完全不用担心情绪问题。当然,历史业绩不代表未来,大家还是要谨慎。

踩过的3个大坑

坑1:过度拟合 有一段时间我疯狂优化参数,把回测收益做到了年化80%。结果一实盘就傻眼——收益直接变成负的。后来我才明白,过度优化参数只是「过拟合」,策略在历史数据上「记忆」太好,反而失去了泛化能力。 坑2:忽视流动性 我曾经设计过一个策略,专门炒小市值的冷门股。结果实盘的时候发现,几十万资金根本卖不出去!后来我给自己定了个规矩:只做日均成交额超过1亿的股票。 坑3:没有风控 早期我完全不考虑仓位管理,全仓进出。有一次策略触发连续止损,三天亏了15%……现在我学会了单笔仓位不超过10%,每天最大亏损不超过3%就暂停交易。

我是怎么用AI辅助策略开发的

说到这里,必须提一下我现在的策略开发流程。以前我完全靠自己盯K线、算指标,效率低还容易漏掉重要信息。 后来我开始用AI股票分析来辅助分析。比如我在选股阶段会用它的多维度评分系统,看看这只股票的技术面、基本面、资金面都处于什么状态,节省了不少研究时间。 不过有一点要提醒大家:AI分析只是辅助工具,最终的交易决策还是要自己判断。我现在是把AI分析作为「输入信号」之一,而不是完全依赖它。

给新手的几点建议

  1. 从小资金开始:先用模拟盘跑3个月,确认策略有效再实盘。实盘初期资金不要超过总仓位的20%。
  2. 做好记录:每次交易都要记录原因、盈亏、心得。我用的是Excel,有个老哥推荐用自动化交易平台来自动记录,我试了确实比自己记方便很多。
  3. 持续学习:量化交易是个持续迭代的过程,策略需要不断优化。我每周会花2-3小时复盘策略表现,思考改进方向。
  4. 控制预期:年化20%以上已经很不错了,别想着暴富。我见过太多人因为追求高收益,最后本金都亏没了。

总结

写了这么多,其实就想说一件事:程序化交易没有你想的那么难,但也没有某些人吹的那么神。它本质上是一个工具,帮助我们克服人性弱点、执行交易计划的工具。 我的建议是,如果你对量化交易感兴趣,可以先从简单的策略开始,用小资金慢慢验证。别一上来就搞什么高频交易、机器学习,先把「双均线交叉」这种基础策略玩透了再说。 如果你觉得手动写代码太麻烦,或者想快速体验一下量化交易的感觉,可以试试aimoca平台的AI股票分析功能,一个月才9.9元,AI会帮你分析股票的技术面、基本面、资金面,挺适合作为入门学习的辅助工具。 当然,如果你想更进一步,实现全自动交易,他们也有现成的接口和策略模板可以直接用,省去了很多自己写代码的麻烦。 最后还是那句话:市场有风险,投资需谨慎。祝大家都能找到适合自己的投资方式!

⚠️ 免责声明:本文仅供参考,不构成投资建议。投资有风险,入市需谨慎。数据来源:aimoca AI分析系统

想亲自体验AI股票分析?

基于DeepSeek大模型,多维度智能分析股票走势,助您做出更明智的投资决策

立即体验AI分析