金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 1546|回复: 3

策略需要加仓逻辑,编不好,麻烦指正

[复制链接]

3

主题

7

帖子

7

积分

Rank: 1

等级: 新手上路

注册:
2022-11-25
曾用名:
发表于 2024-3-24 16:26 | 显示全部楼层 |阅读模式
//布林指标
//中间变量
持仓:HOLDING,COLORGRAY,LINETHICK0,COLORRED;
M:=130;
K:=2;
MID:MA(CLOSE,M);//布林中轨
UPPER:MID + K*STD(CLOSE,M);//布林上轨
LOWER:MID - K*STD(CLOSE,M);//布林下轨
SS:=1;
当前资产:=ASSET,NOAXIS,COLORGRAY;
TR1:=MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));
ATR:=MA(TR1,60);
//交易条件
平空开多条件:=C>UPPER AND REF(C>UPPER,1);//开多条件
平多开空条件:=C<LOWER AND REF(C<LOWER,1);//开空条件
多损条件:=C<ENTERPRICE-3*ATR;
空损条件:=C>ENTERPRICE+3*ATR;
//交易执行
IF (TIME>000000 AND TIME<225500) THEN begin
多损:SELL(多损条件,SS,MARKET);
空损:SELLSHORT(空损条件,SS,MARKET);
END
IF (TIME>000000 AND TIME<225500) THEN begin
平空:SELLSHORT(平空开多条件,SS,MARKET);
开多:buy(平空开多条件 AND HOLDING=0,SS,MARKET);
end
IF (TIME>000000 AND TIME<225500) THEN begin
平多:sell(平多开空条件,SS,MARKET);
开空:buyshort(平多开空条件 AND HOLDING=0,SS,MARKET);
END
IF TIME>2255000 THEN BEGIN
收盘平空:SELLSHORT(1,HOLDING,MARKET);
收盘平多:SELL(1,HOLDING,MARKET);
END

以上策略是简单的5倍布林上下轨突破带止损策略,需要加上止损加仓逻辑,加仓逻辑为:1,1,2,3,4,4,4基本单位,即第一次开仓后止损还按1基本单位开仓,再亏损下次开仓按2基本单位,依次加到4不再往上加,直至加到出盈利单,则回归1个基本开仓单位
我是菜鸟哈,编了下面这个策略,不对,麻烦修正,万分感谢!是不是要用STATUS=0,STATUS=1,STATUS=-1,来判定前一单的盈亏状况啊?

//布林指标
//中间变量
持仓:HOLDING,COLORGRAY,LINETHICK0,COLORRED;
M:=130;
K:=2;
MID:MA(CLOSE,M);//布林中轨
UPPER:MID + K*STD(CLOSE,M);//布林上轨
LOWER:MID - K*STD(CLOSE,M);//布林下轨
SS:=1;
当前资产:=ASSET,NOAXIS,COLORGRAY;
TR1:=MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));
ATR:=MA(TR1,60);
多赢:=EXITPRICE>ENTERPRICE;
多亏:=EXITPRICE<ENTERPRICE;
空赢:=EXITPRICE<ENTERPRICE;
空亏:=EXITPRICE>ENTERPRICE;
//交易条件
平空开多条件:=C>UPPER AND REF(C>UPPER,1);//开多条件
平多开空条件:=C<LOWER AND REF(C<LOWER,1);//开空条件
加多条件:=C>UPPER AND REF(C>UPPER,1) AND (多亏 OR 空亏) AND HOLDING<5;
加空条件:=C<LOWER AND REF(C<LOWER,1) AND (多亏 OR 空亏) AND HOLDING>-5;
多损条件:=C<ENTERPRICE-3*ATR;
空损条件:=C>ENTERPRICE+3*ATR;
//交易执行
IF (TIME>000000 AND TIME<225500) THEN begin
多损:SELL(多损条件,SS,MARKET);
空损:SELLSHORT(空损条件,SS,MARKET);
END
IF (TIME>000000 AND TIME<225500) THEN begin
平空:SELLSHORT(平空开多条件,SS,MARKET);
加多:buy(加多条件,EXITVOL,MARKET);
开多:buy(平空开多条件 AND HOLDING=0,SS,MARKET);
end
IF (TIME>000000 AND TIME<225500) THEN begin
平多:sell(平多开空条件,SS,MARKET);
加空:buyshort(加空条件,EXITVOL,MARKET);
开空:buyshort(平多开空条件 AND HOLDING=0,SS,MARKET);
END
IF TIME>2255000 THEN BEGIN
收盘平空:SELLSHORT(1,HOLDING,MARKET);
收盘平多:SELL(1,HOLDING,MARKET);
END



回复

使用道具 举报

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-3-25 08:50 | 显示全部楼层
工作人员编写中,请稍后
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2024-3-25 09:32 | 显示全部楼层
[PEL] 复制代码
//布林指标
//中间变量
持仓:=holding,colorgray,linethick0,colorred;
m:=130;
k:=2;
mid:ma(close,m);//布林中轨
upper:mid + k*std(close,m);//布林上轨
lower:mid - k*std(close,m);//布林下轨
ss:=1;
当前资产:=asset,noaxis,colorgray;
tr1:=max(max((high-low),abs(ref(close,1)-high)),abs(ref(close,1)-low));
atr:=ma(tr1,60);
多赢:=exitprice>enterprice;
多亏:=exitprice<enterprice;
空赢:=exitprice<enterprice;
空亏:=exitprice>enterprice;
//交易条件
平空开多条件:=c>upper and ref(c>upper,1);//开多条件
平多开空条件:=c<lower and ref(c<lower,1);//开空条件
多损条件:=c<enterprice-3*atr;
空损条件:=c>enterprice+3*atr;
//交易执行
if (time>000000 and time<225500)  then begin
多损:sell(多损条件,ss,market);
空损:sellshort(空损条件,ss,market);
end
if (time>000000 and time<225500) then begin
平空:sellshort(平空开多条件,ss,market);
realss:=if(numprofit(1)<0,min(if(numprofit(2)<0,entervol+ss,ss),4),ss);
开多:buy(平空开多条件 and holding=0,realss,market);
end
if (time>000000 and time<225500) then begin
平多:sell(平多开空条件,ss,market);
realss:=if(numprofit(1)<0,min(if(numprofit(2)<0,entervol+ss,ss),4),ss);
开空:buyshort(平多开空条件 and holding=0,realss,market);
end
if time>2255000 then begin
收盘平空:sellshort(1,holding,market);
收盘平多:sell(1,holding,market);
end
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

3

主题

7

帖子

7

积分

Rank: 1

等级: 新手上路

注册:
2022-11-25
曾用名:
 楼主| 发表于 2024-3-26 11:34 | 显示全部楼层
感谢,感谢,加仓逻辑用REALSS,NUMPROFIT函数啊! 我学习下
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-7-30 10:18 , Processed in 0.103310 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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