ptrade量化编程手把手教你写策略!保姆级攻略!
发布时间:2026-4-14 13:32阅读:100
PTrade 量化编程写策略可参考以下保姆级攻略:
准备工作
- 软件与环境:确保已开通支持 PTrade 的证券账户,下载安装实盘版或模拟版。电脑安装 Python 3.7-3.9 版本,安装时勾选 “Add Python to PATH”。
- 登录与配置:打开 PTrade,用资金账号和交易密码登录。点击左侧菜单栏【量化】,选择【Python 策略】进入编辑页面。点击右上角【环境配置】,选择 “本地 Python 环境”,找到 Python 安装路径后确认,完成环境连接。
编写简单均线策略
- 策略逻辑:以双均线交叉策略为例,当短期均线(如 5 日均线)上穿长期均线(如 20 日均线)时买入,下穿时卖出。
- 代码实现:
- python
# 导入PTrade量化必备库
from ptrade import *
import pandas as pd
import numpy as np
# 1. 策略初始化(设置策略基本信息)
def init(context):
# 定义要交易的标的(这里选择贵州茅台,代码600519,新手可替换成自己熟悉的股票/ETF)
context.symbol = "600519.SH"
# 定义短期均线和长期均线的周期(5日均线和20日均线)
context.short_period = 5
context.long_period = 20
# 设置初始资金(模拟版可随意设置,实盘版为账户实际资金)
context.capital = 100000
# 2. 行情触发函数(每根K线都会触发一次,捕捉均线交叉信号)
def on_bar(context, bars):
# 获取标的的历史行情数据(获取最近30根K线,用于计算均线,避免数据不足)
df = get_price(context.symbol, count=30, frequency="1d", fields=("close"))
# 计算短期均线(5日均线)和长期均线(20日均线)
df["ma_short"] = df["close"].rolling(window=context.short_period).mean()
df["ma_long"] = df["close"].rolling(window=context.long_period).mean()
# 去除均线计算中产生的空值(前19根K线无法计算20日均线,会显示空值)
df = df.dropna()
# 3. 捕捉买入信号(短期均线上穿长期均线,且当前无持仓)
# 取最新两根K线的均线数据,判断是否上穿
if len(df) >= 2:
# 前一根K线:短期均线 < 长期均线
last_ma_short = df["ma_short"].iloc[-2]
last_ma_long = df["ma_long"].iloc[-2]
# 当前K线:短期均线 > 长期均线
current_ma_short = df["ma_short"].iloc[-1]
current_ma_long = df["ma_long"].iloc[-1]
# 买入信号触发
if last_ma_short < last_ma_long and current_ma_short > current_ma_long:
# 计算可买入的股数(满仓买入,保留手续费,实盘可调整仓位)
cash = context.account.cash # 获取账户可用资金
price = bars(context.symbol)["close"] # 获取当前标的收盘价
quantity = cash // (price * 100) * 100 # A股最低买入100股,即1手,需是100的整数倍
if quantity > 0:
# 执行买入操作
order_buy(context.symbol, quantity=quantity, price=price)
print("买入信号触发,买入股数:", quantity)
# 4. 捕捉卖出信号(短期均线下穿长期均线,且当前有持仓)
elif last_ma_short > last_ma_long and current_ma_short < current_ma_long:
# 获取当前持仓股数
position = context.account.positions.get(context.symbol, 0)
if position > 0:
# 执行卖出操作(清空持仓)
order_sell(context.symbol, quantity=position, price=price)
回测与优化
将上述代码复制到 PTrade 的 Python 策略编辑页面,点击回测相关按钮,设置好回测时间、初始资金等参数后,进行回测。根据回测报告中的收益率、最大回撤等指标评估策略表现,若效果不佳,可调整均线周期等参数或优化交易逻辑,直至达到满意效果。
如果不想编写代码,PTrade 还提供了向导式策略(零码量化)工具。无需编程,通过智能选股、买卖交易设置、风控设置、回测验证等步骤,即可生成策略,还能一键导出源码。
股票开户找我!无门槛国债逆回购一折 (百万分之一)!ETF佣金万0.5!融资利率5%以下!优惠多多!免费量化!ptrade&QMT!

温馨提示:投资有风险,选择需谨慎。
-
震荡行情难赚钱?国泰海通网格交易工具,手把手教你赚稳波动差价
2026-04-20 14:43
-
华泰证券新老客户十年Level2行情免费领啦!速览领取指南
2026-04-20 14:43
-
国泰海通合并1周年!周年庆福利满满,怎么高效领取?(含新客理财券)
2026-04-20 14:43


问一问

+微信
分享该文章
