金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
楼主: 袁林

止损

[复制链接]

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-3-14 09:05 | 显示全部楼层
h1:=hhv(h,enterbars+1);//注意 这里是用h统计,你也可以考虑用c  
if holding>=0  and hl then begin
多止损:zs;
if l<zs and h1-avgenterprice>=50*mindiff then 多回撤止损1:sell(1,1,limitr,min(o,zs)-mindiff);
else if sellcond then sell(1,1,limitr,c);
buyshort((type(1)=2 or type(1)=0),1,marketr);
end


你这里开仓的条件没有收到cross控制,你要加上cross条件才是符合cross条件看仓的了
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2024-3-14 09:21 | 显示全部楼层
首先,你自己添加的2个下单语句,你没有给他合理控制的呀,几乎是无条件的。自然会触发出来。

直接利用你现有的hl这个全局变量,平仓后 赋值作为标记 下次开仓时候判断下
[PEL] 复制代码
variable:zs:=c,hl:=c;//声明全局变量zs、hl
ma5:=ma(c,5);
ma20:=ma(c,20);
atr:ma(h-l,20);//市场平均波动幅度
buycond:=cross(ma5,ma20);//平空开多条件
sellcond:=cross(ma20,ma5);//平多开空条件

hx:=hhv(h,enterbars+1);//注意 这里是用h统计,你也可以考虑用c  
if holding>0 then begin
多止损:zs;
if l<zs and hx-avgenterprice>=50*mindiff then 
begin
多回撤止损1:sell(1,1,limitr,min(o,zs)-mindiff);
hl:=1;//止损触发后 给hl赋值,作为一个标记
end 
if sellcond then sell(1,1,limitr,c);

end
lx:=llv(l,enterbars+1);//注意 这里是用l统计,你也可以考虑用c
if holding<0 then begin
空止损:zs;
if h>zs and avgenterprice-lx>=50*mindiff then 
begin 
空回撤止损1:sellshort(1,1,limitr,max(o,zs)+mindiff);
hl:=-1;//止损触发后 给hl赋值,作为一个标记
end 
if buycond then sellshort(1,1,limitr,c);
end



if holding=0 and buycond and hl<>1 then begin//多头开仓
buy(1,1,limitr,c);
zs:=c-2*atr;
hl:=c;//hl开仓后的最有利价位,刚买入时,最有利价位为开仓价
end

if holding=0 and sellcond and hl<>-1 then begin//空头开仓
buyshort(1,1,limitr,c);
zs:=c+2*atr;
hl:=c;
end

if holding>0 and enterbars>0 and h>hl  then begin//最高价抬升,止损位相应地抬升
hl:=h;
zs:=hl-2*atr;
end

if holding<0 and enterbars>0 and l<hl  then begin//最低价下降,止损位相应地下移
hl:=l;
zs:=l+2*atr;
end
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

32

主题

178

帖子

178

积分

等级: 免费版

注册:
2023-3-7
曾用名:
 楼主| 发表于 2024-3-14 12:34 | 显示全部楼层
谢谢老师们!我查到原因了,我的下单条件是><,变成每根K都是多或空,所以 止损后又买进了,不是CROSS单独一点
回复

使用道具 举报

32

主题

178

帖子

178

积分

等级: 免费版

注册:
2023-3-7
曾用名:
 楼主| 发表于 2024-3-15 12:55 | 显示全部楼层
老师,你好!再问个另外止损的问题:盈利了20个点之后,价格回撤到10个点时平仓,我想直接写条语句平仓,可以吗?还是要用全局变量?

我写成这样不对,
WW:=20;
多保本条件:BARSLAST(C>AVGENTERPRICE+WW AND C>ENTERPRICE+WW) AND (C>AVGENTERPRICE+WW/2 AND C>ENTERPRICE+WW/2);
空保本条件:BARSLAST(C<AVGENTERPRICE-WW AND C<ENTERPRICE-WW) AND (C<AVGENTERPRICE-WW/2 AND C<ENTERPRICE-WW/2);
回复

使用道具 举报

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-3-15 12:58 | 显示全部楼层
if hhv(OPENPROFITPER,enterbars)>0.2 and OPENPROFITPER<0.1 then sell(1,holding,marketr)


直接用盈亏幅度这个函数就行了,开仓后最大幅度超过0.2
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

32

主题

178

帖子

178

积分

等级: 免费版

注册:
2023-3-7
曾用名:
 楼主| 发表于 2024-3-15 13:59 | 显示全部楼层
我加入了这句:
if hhv(OPENPROFITPER,enterbars)>0.2 and OPENPROFITPER<0.1 then sell(1,holding,marketr);
你这个最高涨幅达到20%,然后回落10%时平仓。是不?如果是最高盈利达到20个点,回落到10个点呢?

if hhv(OPENPROFITPER,enterbars)>20*mindiff and OPENPROFITPER<10*mindiff then sell(1,holding,marketr);
这样又不对

补充内容 (2024-3-15 14:02):
按你写的,它未够20个点之后都执行了,发现每次都是赚5个点左右平的

本帖子中包含更多资源

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

x
回复

使用道具 举报

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-3-15 14:05 | 显示全部楼层
20个点要用这个函数,这个表示浮动盈亏是具体的钱

本帖子中包含更多资源

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

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

使用道具 举报

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-3-15 14:06 | 显示全部楼层
OPENPROFIT>20*mindiff*MULTIPLIER


期货的盈亏要用乘以一个单位就行了
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

32

主题

178

帖子

178

积分

等级: 免费版

注册:
2023-3-7
曾用名:
 楼主| 发表于 2024-3-15 14:32 | 显示全部楼层
加了这个if hhv(OPENPROFIT,enterbars)>20*mindiff*MULTIPLIER and OPENPROFIT<10*mindiff*MULTIPLIER then sell(1,holding,marketr);
未找到哪里问题,我想法是:开仓后,盈利达到20个点后,盈利回落到10个点时就平仓,你写的逻辑条件对,但又不知哪里还有问题?

本帖子中包含更多资源

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

x
回复

使用道具 举报

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-3-15 14:38 | 显示全部楼层
a:OPENPROFIT;

在图上看下这个盈亏金额呢,是多少
你这图上不是有回落出场的吗
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-2 04:08 , Processed in 0.133933 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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