金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 2787|回复: 3

老师,请教一个命令的编写问题

[复制链接]

7

主题

16

帖子

16

积分

Rank: 1

等级: 新手上路

注册:
2022-12-6
曾用名:
发表于 2022-12-19 14:09 | 显示全部楼层 |阅读模式
老师,如何在开仓的同一条命令中又加入止损或者对应的平仓条件呢,且该止损或平仓条件只对该命令的开仓有效,而对其他开仓无效?
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-12-19 14:33 | 显示全部楼层
你设置对应开仓价的止损还能理解,设置对应开仓的平仓条件 是什么个逻辑。我指定这个开仓 是macdsc平仓,其他开仓就不能在macdsc 时候平仓了?
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

7

主题

16

帖子

16

积分

Rank: 1

等级: 新手上路

注册:
2022-12-6
曾用名:
 楼主| 发表于 2022-12-19 14:48 | 显示全部楼层
嗯,我一个系统有几种开仓的条件,比如突破开仓,突破失败就平仓,也可能是回调开仓,那么就是另外的平仓条件,相当于对开仓的指令进行分组一样,一一对应,不知道我表达的是否清楚?A 开仓对应A平仓,B开仓对应B平仓,B平仓条件不能针对A 开仓有效
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-12-19 15:06 | 显示全部楼层
VARIABLE:KP1:=0,KP2:=0;


macd1:="macd.macd1";
//开多1,平多1
kd1:macd1>0 and ref(macd1,1)<0;
pd1:macd1<0 and ref(macd1,1)>0;

ma5:=ma(c,5);
ma10:=ma(c,10);
//开多2,平多2
kd2:cross(ma5,ma10);
pd2:cross(ma10,ma5);


//平仓时候判断记录的开仓价是否为0
if  kp1<>0 and pd1 then
begin
平多1:sell(1,1,market);   
kp1:=0;//平仓重置全局变量
end

if  kp2<>0 and pd2 then
begin
平多2:sell(1,1,market);   
kp2:=0;
end


//单个条件每次开仓时候记录一个开仓价,后续平仓 会根据全局变量值判断是否盈利10个点,然后进行平仓

if kd1 and KP1=0 then
begin
开多1:buy(1,1,market);
KP1:=ENTERPRICE;//给全局变量赋值
end

if kd2 and KP2=0 then
begin
开多2:buy(1,1,market);
KP2:=ENTERPRICE;
end

参考这个范例吧。核心就是用多个全局变量 对开平进行维护。一个全局变量对应一个开仓。开仓时候记录一个值。平仓时候判断这个全局变量是否满足条件。  以上范例只是提供思路,具体应用到你自己策略里则需要灵活使用上面范例里的思路.
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-9 14:10 , Processed in 0.117560 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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