量化交易 聚宽 市场ETF精选轮动策略(模拟交易)

策略流程

请添加图片描述

回测结果

在这里插入图片描述
在这里插入图片描述

代码

# 导入函数库
from jqdata import *
from six import BytesIO
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
以下是聚宽期货量化交易双均线策略及源代码: 策略概述: 该策略是一种基于双均线的趋势跟踪策略,使用两条移动平均线(MA)来确定买入和卖出信号。当短期MA(如5日MA)上穿长期MA(如20日MA)时,产生买入信号;当短期MA下穿长期MA时,产生卖出信号。该策略适用于大部分的期货品种。 源代码: # 导入聚宽期货模块 import jqdata from jqdata import * import talib # 初始化函数,设定基准等等 def initialize(context): set_benchmark('RB9999.XSGE') set_option('use_real_price', True) log.set_level('order', 'error') # 设定股票池,这里以螺纹钢为例 g.stock = 'RB9999.XSGE' # 设定参数,这里以5日MA和20日MA为例 g.short_ma = 5 g.long_ma = 20 # 设定交易费率,这里以万分之二为例 set_order_cost(OrderCost(open_tax=0.00002, close_tax=0.00002, open_commission=0.00002, close_commission=0.00002, minimum_commission=5), type='future') # 开盘时运行函数 def handle_data(context, data): # 获取股票价格数据 price = attribute_history(g.stock, g.long_ma + 1, '1d', ['close'], skip_paused=True, df=False)['close'] # 计算短期和长期移动平均线 short_ma = talib.SMA(price, g.short_ma)[-1] long_ma = talib.SMA(price, g.long_ma)[-1] # 判断是否买入或卖出 if short_ma > long_ma and context.portfolio.positions[g.stock].total_amount == 0: # 买入 order_value(g.stock, context.portfolio.cash) elif short_ma < long_ma and context.portfolio.positions[g.stock].total_amount > 0: # 卖出 order_target(g.stock, 0)

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

廷益--飞鸟

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

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

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

打赏作者

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

抵扣说明:

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

余额充值