金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 7888|回复: 29

固定止损

[复制链接]

107

主题

813

帖子

813

积分

等级: 免费版

注册:
2022-12-12
曾用名:
发表于 2023-2-17 16:43 | 显示全部楼层 |阅读模式




//判断当前持仓状态下的最大盈利
论坛看到的这个固定止损,回测发现有亏损8个点的  我想设置2手以下包含2手止损5个点  大于2手的止损2个点要怎么改?

WIN:=0;
WIN2:=0;
IF HOLDING > 0 AND ENTERBARS > 0 AND CC=1 OR HOLDING > 0 AND ENTERBARS > 0 AND CC=2 OR HOLDING > 0 AND ENTERBARS > 0 AND CC=3 THEN
BEGIN
  WIN:=(C-ENTERPRICE)/ENTERPRICE*100; //记录最大盈利
  IF WIN>MAXPROFIT THEN
    MAXPROFIT:=WIN;

  WIN2:=(MAXPROFIT-WIN)/MAXPROFIT*100; //最大盈利后的回调幅度
END
IF HOLDING < 0 AND ENTERBARS > 0 AND CC=-1 OR HOLDING < 0 AND ENTERBARS > 0 AND CC=-2 OR HOLDING < 0 AND ENTERBARS > 0 AND CC=-3 THEN
BEGIN
  WIN:=(ENTERPRICE-C )/ENTERPRICE*100; //记录最大盈利
  IF WIN > MAXPROFIT THEN
    MAXPROFIT:=WIN;

WIN2:=(MAXPROFIT-WIN)/MAXPROFIT*100; //最大盈利后的回调幅度
END
//出现浮动亏损比如2%平仓
多1止损1:SELL( WIN < -2,0,LIMITR,C);
//多1止损2:SELL( WIN < -2, HOLDING/2,LIMITR,C);
//出现最高盈利后,回落到盈利的60%平仓出场
多1止赢1:SELL(C-ENTERPRICE>100 AND WIN2 >= 80 AND OPENPROFIT > 0, HOLDING/2,LIMITR,C);
多1止赢2:SELL(C-ENTERPRICE>100 AND WIN2 >= 60 AND OPENPROFIT > 0, HOLDING,LIMITR,C);


//出现浮动亏损比如2%平仓
//空1止损1:SELLSHORT(  WIN < -2 , HOLDING/2,LIMITR,C);
空1止损2:SELLSHORT( WIN < -2 ,0,LIMITR,C);
//出现最高盈利后,回落到盈利的60%平仓出场
空1止赢1:SELLSHORT(ENTERPRICE-C>100 AND WIN2 >= 80 AND OPENPROFIT >HOLDING/2, 0,LIMITR,C);
空1止赢2:SELLSHORT(ENTERPRICE-C>100 AND WIN2 >= 60 AND OPENPROFIT >HOLDING, 0,LIMITR,C);
/////////////////////////////////////////////////////////////////

回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-2-17 17:02 | 显示全部楼层
本帖最后由 技术009 于 2023-2-17 17:04 编辑

写多个语句,进行操作。

空1止损1:SELLSHORT(  WIN <= -5 and abs(holding)<=2 , HOLDING,LIMITR,C);
空1止损2:SELLSHORT( WIN <= -2 and abs(holding)>2 ,HOLDING,LIMITR,C);
或者合并下也行
空止损:SELLSHORT( WIN <= if(abs(holding)>2,-2,-5) ,HOLDING,LIMITR,C);
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

107

主题

813

帖子

813

积分

等级: 免费版

注册:
2022-12-12
曾用名:
 楼主| 发表于 2023-2-17 18:10 | 显示全部楼层
技术009 发表于 2023-2-17 17:02
写多个语句,进行操作。

空1止损1:SELLSHORT(  WIN

不知道为什么 止损不了
回复

使用道具 举报

107

主题

813

帖子

813

积分

等级: 免费版

注册:
2022-12-12
曾用名:
 楼主| 发表于 2023-2-17 18:29 | 显示全部楼层
啥玩意 发表于 2023-2-17 18:10
不知道为什么 止损不了

可以了 回测止损超过的是跳空的止损 会超过点数
回复

使用道具 举报

107

主题

813

帖子

813

积分

等级: 免费版

注册:
2022-12-12
曾用名:
 楼主| 发表于 2023-2-18 15:26 | 显示全部楼层
技术009 发表于 2023-2-17 17:02
写多个语句,进行操作。

空1止损1:SELLSHORT(  WIN

STKLABEL()='SA05'  老师你好,这个引用品种代码,或者引用品种名称那个。能不能不指定月,比如纯碱 我就是所有的月份都可以,因为交易的时候会去选择品种月份。或者另外一种就是自动选择主力合约和次主力合约的方法  麻烦老师指导一下。
回复

使用道具 举报

37

主题

9975

帖子

6万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2023-2-20 08:40 | 显示全部楼层
不能,STKLABEL的返回值就是当前合约的代码。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

107

主题

813

帖子

813

积分

等级: 免费版

注册:
2022-12-12
曾用名:
 楼主| 发表于 2023-2-20 10:25 来自手机 | 显示全部楼层
图表模拟回测可以换主力合约吗?我用这个函数加判断,加上1,5,9月份,相当于只有主力和次主力才符合条件?
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-2-20 10:48 | 显示全部楼层
不能换,图表模型不支持在代码里指定品种下单的。你直接回测连续合约不就行了。连续就是不同月份的主力合成的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

107

主题

813

帖子

813

积分

等级: 免费版

注册:
2022-12-12
曾用名:
 楼主| 发表于 2023-2-20 10:50 来自手机 | 显示全部楼层
哦,我还不知道
回复

使用道具 举报

107

主题

813

帖子

813

积分

等级: 免费版

注册:
2022-12-12
曾用名:
 楼主| 发表于 2023-2-20 16:47 | 显示全部楼层
技术009 发表于 2023-2-20 10:48
不能换,图表模型不支持在代码里指定品种下单的。你直接回测连续合约不就行了。连续就是不同月份的主力合成 ...

如果明天是节假日,怎么表示?,我有当然剩余周期数。如果明天是节假日,今日剩余周期数是1的时候平仓为0.
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-9 17:20 , Processed in 0.092473 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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