金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 4134|回复: 7

请教老师关于加仓和减仓的问题

[复制链接]

60

主题

200

帖子

200

积分

等级: 免费版

注册:
2021-6-24
曾用名:
发表于 2022-3-26 12:16 | 显示全部楼层 |阅读模式
我有三种开空条件,分别为开空条件1、开空条件2、开空条件3。假如我用下面这段语句是可以开空,但是无法加仓,例如:
“IF 开空条件2 THEN BEGIN
        开空二:BUYSHORT( HOLDING=0,手数,MARKET),COLORCYAN;
END        ”//这段语句在满足开空条件2时,是可以开空“手数”, 但假如随后也满足了开空条件1或者开空条件3,需要加仓空单,要怎么写呢?因为此时HOLDING<0,用“HOLDING=0”肯定是不行的。
回复

使用道具 举报

37

主题

9933

帖子

5万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2022-3-26 12:26 | 显示全部楼层
本帖最后由 技术006 于 2022-3-26 15:10 编辑

IF 开空条件2 THEN BEGIN
        开空二:BUYSHORT( HOLDING=0,手数,MARKET),COLORCYAN;
END
IF 开空条件1 THEN BEGIN
        开空1:BUYSHORT( HOLDING<0,手数,MARKET),COLORCYAN;
END

类似上面这种,但是要区分主次关系。如上面的只有开空1开仓后,开空2作为加仓条件才会触发。若这三者的条件是并列关系,只要将

IF 开空条件2  or开空条件1  or 开空条件3  THEN BEGIN
        开空:BUYSHORT( 1,手数,MARKET),COLORCYAN;
END

补充也可通过全局变量进行标记。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

60

主题

200

帖子

200

积分

等级: 免费版

注册:
2021-6-24
曾用名:
 楼主| 发表于 2022-3-26 17:17 | 显示全部楼层
技术006 发表于 2022-3-26 12:26
IF 开空条件2 THEN BEGIN
        开空二:BUYSHORT( HOLDING=0,手数,MARKET),COLORCYAN;
END

开空条件2  、开空条件1  、 开空条件3。这三个条件不是并列关系,是只要满足其中一个开空条件就开空,出现另外的开空条件时就会继续开空。三个开空条件出现的顺序是随机的。
如下图,箭头所指的白色线为“开空条件1”,箭头所指的黄色线为“开空条件2”,我希望得到的效果是,满足“开空条件1”时,开空1手。满足“开空条件2”时再加开空单1手。
QQ图片20220326171508.png
回复

使用道具 举报

37

主题

9933

帖子

5万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2022-3-26 18:48 | 显示全部楼层
本帖最后由 技术006 于 2022-3-26 18:50 编辑

那就是或的关系。谁满足谁开仓就行。
IF 开空条件2  or 开空条件1  or 开空条件3  THEN BEGIN
        开空:BUYSHORT( 1,手数,MARKET),COLORCYAN;
END
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

60

主题

200

帖子

200

积分

等级: 免费版

注册:
2021-6-24
曾用名:
 楼主| 发表于 2022-3-26 23:16 | 显示全部楼层
技术006 发表于 2022-3-26 18:48
那就是或的关系。谁满足谁开仓就行。
IF 开空条件2  or 开空条件1  or 开空条件3  THEN BEGIN
        开 ...

这样新的问题就会出现,会重复开仓。以前加了”HOLDING=0”才能开仓,现在把”HOLDING=0”删除后,信号没法过滤,反复开空。如下图。
1648307556(1).png
回复

使用道具 举报

37

主题

9933

帖子

5万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2022-3-27 00:00 | 显示全部楼层
本帖最后由 技术006 于 2022-3-27 00:15 编辑

通过这种方式处理。上根k条件不成立和当根k成立组合。例如
开空条件11: ref(开空条件1)=0 and 开空条件1=1
或者用全局变量做开关。
VARIABLE:flag1=0;
VARIABLE:flag2=0;
VARIABLE:flag3=0;

IF 开空条件1 and flag1=0 THEN BEGIN
        开空1:BUYSHORT( 1,手数,MARKET),COLORCYAN;
        flag1:=1;
END

IF 开空条件2 and and flag2=0 THEN BEGIN
        开空二:BUYSHORT( 1,手数,MARKET),COLORCYAN;
        flag2:=1;
END

//在平仓时再把全局变量置成0.

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

使用道具 举报

60

主题

200

帖子

200

积分

等级: 免费版

注册:
2021-6-24
曾用名:
 楼主| 发表于 2022-3-28 23:17 | 显示全部楼层
技术006 发表于 2022-3-27 00:00
通过这种方式处理。上根k条件不成立和当根k成立组合。例如
开空条件11: ref(开空条件1)=0 and 开空条件1=1 ...

今天我朋友根据老师您的信息写出来了,100%达到预期。这个全局变量太牛叉了 ,我得好好学习这个函数的用法,不知道有没好的帖子或者视频。
回复

使用道具 举报

37

主题

9933

帖子

5万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2022-3-29 08:33 | 显示全部楼层
没有。全局变量就这么几种常用的玩法。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-25 19:19 , Processed in 0.230631 second(s), 24 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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