比较简单的python代码(用Python写一个简单的股票量化交易策略)

wufei123 发布于 2024-09-23 阅读(1)

大家好!我是幻化意识流今天我突发奇想,想用Python写一个最简单的股票量化交易策略,只闻其声,未见其影,总是听人们说量化交易代码什么什么的,感觉很神秘的样子,现在让我们看看它的庐山真面目吧:import pandas as pd。

import yfinance as yf# 下载股票数据data = yf.download("AAPL", start="2020-01-01", end="2021-12-31")# 计算股票收益率和移动平均线

data[returns] = data[Adj Close].pct_change()data[ma50] = data[Adj Close].rolling(window=50).mean()data[ma200] = data[Adj Close].rolling(window=200).mean()

# 定义交易信号def get_signal(row):if row[ma50] > row[ma200]:return 1else:return -1# 计算交易信号data[signal] = data.apply(get_signal, axis=1)

# 计算每天的收益率data[strategy_returns] = data[signal].shift(1) * data[returns]# 计算累计收益率和基准收益率data[cum_strategy_returns] = (data[strategy_returns] + 1).cumprod()

data[cum_returns] = (data[returns] + 1).cumprod()# 绘制累计收益曲线和基准收益曲线data[[cum_strategy_returns, cum_returns]].plot()

下面我对以上代码做个简要的说明:代码实现了一个简单的股票交易策略,基于股票的50日和200日移动平均线,当短期均线上穿长期均线时,产生买入信号,当短期均线下穿长期均线时,产生卖出信号运用这个策略,我们可以计算出每天的收益率,并绘制出策略累计收益曲线和基准收益曲线,以便于策略的评估和比较。

当然,这只是一个简单的示例,如果您对量化交易感兴趣,可以深入的学习一下。

亲爱的读者们,感谢您花时间阅读本文。如果您对本文有任何疑问或建议,请随时联系我。我非常乐意与您交流。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。