用Python写一个简单的股票量化交易策略

用Python写一个简单的股票量化交易策略

今天我突发奇想,想用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 1

else:

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日移动平均线,当短期均线上穿长期均线时,产生买入信号,当短期均线下穿长期均线时,产生卖出信号。运用这个策略,我们可以计算出每天的收益率,并绘制出策略累计收益曲线和基准收益曲线,以便于策略的评估和比较。

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

用Python写一个简单的股票量化交易策略

发布者:股市刺客,转载请注明出处:https://www.95sca.cn/archives/80981
站内所有文章皆来自网络转载或读者投稿,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。敬请谅解!

(0)
股市刺客的头像股市刺客
上一篇 2024 年 7 月 15 日
下一篇 2024 年 7 月 16 日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注