金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 2704|回复: 7

求老师改写策略

[复制链接]

9

主题

49

帖子

49

积分

Rank: 1

等级: 新手上路

注册:
2023-8-7
曾用名:
发表于 2023-12-6 19:16 | 显示全部楼层 |阅读模式
我现在的系统是20日均线在30日上,同时收盘价15日新高开多。20日均线在30日均线下,同时收盘价创15日新低,开空。每次止损为总资金的1.5%,开仓手数为总资金*1.5%/每手乘数/2/ATR,止盈和止损都一样,
开仓后最高点反向2倍ATR止盈止损。开仓与平仓以收盘价为准,盘中开平仓信号不算。


另外图标上需要画出20日均线30日均线,  开仓后的移动止损线,  开仓点与平仓点之间连线


目前的代码如下:不太完整,希望老师帮忙改改。
input:a(20,1,30,1),b(30,1,50,1),n(2,1,4,1),r(0.015,0.005,1,0.005),m(15,1,999,1);






TR1:=MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));


ATR:=MA(TR1,14);//atr


MA1:=MA(CLOSE,a);//短期均线




MA2:=MA(CLOSE,b);//长期均线


上轨:REF(HHV(CLOSE,m),1);//n日最高价
下轨:REF(LLV(CLOSE,m),1);//n日最低价






zs:=n*ATR*MULTIPLIER;//2倍atr*品种杠杆=暴露风险
cc:=(ASSET*r)/zs;//权益百分比/暴露风险
PosNum:=cc;;//仓位








//交易条件
开多条件:=ma1>ma2 and CLOSE>上轨 and holding=0;//短期均线大于长期均线且最高价大于上轨
开空条件:=ma1<ma2 and CLOSE<下轨 and holding=0;//短期均线小于长期均线且最低价小于下轨


平多条件:=l<(hhv(h,enterbars+1)-2*atr) and holding>0;//最低价<开仓以来最高价减去2*atr的价格
平空条件:=h>(llv(h,enterbars+1)+2*atr) and  holding<0;//最低价<开仓以来最低价加上2*atr的价格






//交易系统






开多:buy(开多条件,PosNum,MARKET);


开空:buyshort(开空条件,PosNum,MARKET);


平多:sell(平多条件,0,MARKET);


平空:sellshort(平空条件,0,MARKET);


回复

使用道具 举报

3

主题

823

帖子

864

积分

Rank: 9Rank: 9Rank: 9

等级: 管理员

注册:
2021-5-10
曾用名:
发表于 2023-12-7 08:59 | 显示全部楼层
1. 采用走完k线模式运行策略,就是以最后的收盘价为准。
2.
MA1:MA(CLOSE,a);//短期均线
MA2:MA(CLOSE,b);//长期均线
其他同理。

开平仓连接线直接用【菜单栏的查看-显示--交易连接线】
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-12-7 09:09 | 显示全部楼层
“开仓与平仓以收盘价为准,盘中开平仓信号不算。”  时间交易选择走完K交易模式就行了。至于回测,回测本来就是默认走完K模式。

“ma1:ma(close,a);//短期均线
ma2:ma(close,b);//长期均线” 修改下定义方式就可以输出指标线了。



“ 开仓点与平仓点之间连线。”



这个系统有 自带的,可以使用。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号? 微信登录

x
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-12-7 09:15 | 显示全部楼层
至于止盈止损线,不就是你2个平仓条件里用的的“hhv(h,enterbars+1)-2*atr” 和 “llv(h,enterbars+1)+2*atr” 新定义2个变量输出出来就行了。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

9

主题

49

帖子

49

积分

Rank: 1

等级: 新手上路

注册:
2023-8-7
曾用名:
 楼主| 发表于 2023-12-7 12:20 | 显示全部楼层
老师,你能帮我把止损线的代码写一下吗?就是多头开仓后只画多头止损线。空头开仓的话就只画空头止损线。
另外就是我现在手动交易,在快收盘的时候看信号,所以信号必须在盘中显示出来,但是我回测是用收盘价回测的。
老师您可以把上面的代码复制粘贴下来,改一下完整的贴在下边。
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-12-7 13:34 | 显示全部楼层
空止损价:if(holding<0,llv(h,enterbars+1)+2*atr,drawnull);
多止损价:if(holding>0,hhv(h,enterbars+1)-2*atr,drawnull);
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

9

主题

49

帖子

49

积分

Rank: 1

等级: 新手上路

注册:
2023-8-7
曾用名:
 楼主| 发表于 2023-12-7 16:47 | 显示全部楼层
我代码不行,都是别人帮我写的。我把这个粘贴进去,止损线还是没有出来
回复

使用道具 举报

3

主题

823

帖子

864

积分

Rank: 9Rank: 9Rank: 9

等级: 管理员

注册:
2021-5-10
曾用名:
发表于 2023-12-7 17:05 | 显示全部楼层
有可能是显示在屏幕之外了。你缩放k线看下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2025-8-2 20:02 , Processed in 0.081918 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表