欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 跨周期开仓条件

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有4236人关注过本帖树形打印复制链接

主题:跨周期开仓条件

帅哥哟,离线,有人找我吗?
wenarm
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:26632 积分:0 威望:0 精华:7 注册:2015/4/9 14:59:07
  发帖心情 Post By:2020/2/10 23:13:10    Post IP:101.88.96.239[只看该作者]

“公式1:”   这是公式的名称。不用放到代码里。写这个名字的原因是要个公式2中的STKINDI函数引用的。这个函数需要指定被引用公式的名字。

只要引用和被引用公式的名字对应上就行。

 

只要以下4行代码就行

MID:  MA(CLOSE,26);//布林中轨
UPPER: MID + 2*STD(CLOSE,26);//布林上轨
LOWER: MID - 2*STD(CLOSE,26);//布林下轨
REF_UPPER: REF(UPPER,1);//因为涉及到小引大,会造成信号闪烁,建议向前引用一根数据作为信号条件。


图片点击可在新窗口打开查看此主题相关图片如下:04.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2020/2/10 23:17:52编辑过]


编程无捷径,技巧靠积累。
 回到顶部
帅哥哟,离线,有人找我吗?
thomasv
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:53 积分:0 威望:0 精华:0 注册:2019/11/6 22:58:39
  发帖心情 Post By:2020/2/12 0:00:34    Post IP:218.108.135.176[只看该作者]

版主,我之前的开仓条件是,当下价格突破布林线上轨就开仓。我现在想改开仓条件:首先突破上轨可以开仓,或者在突破之后回落但是价格没有跌破中轨也可以作为开仓条件。这个因该怎么写。

 回到顶部
帅哥哟,离线,有人找我吗?
wenarm
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:26632 积分:0 威望:0 精华:7 注册:2015/4/9 14:59:07
  发帖心情 Post By:2020/2/12 1:03:35    Post IP:101.88.208.219[只看该作者]

首先突破上轨可以开仓,或者在突破之后回落但是价格没有跌破中轨也可以作为开仓条件

这个条件的表述逻辑中存在交集。“或者在突破之后回落但是价格没有跌破中轨也可以作为开仓条件”它满足条件时,“突破上轨可以开仓”已经成立并开过仓位了。

是要加仓?  突破之后回落到什么程度,条件不充分!

 

请你把两者逻辑关系表述清楚。



编程无捷径,技巧靠积累。
 回到顶部
帅哥哟,离线,有人找我吗?
thomasv
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:53 积分:0 威望:0 精华:0 注册:2019/11/6 22:58:39
  发帖心情 Post By:2020/2/12 16:24:09    Post IP:218.108.135.176[只看该作者]

像最先描述的那样,首先看日线是否突破日线布林上轨,破了之后看1小时是否突破小时布林上轨,破了看15分钟是否突破15分钟上轨。如果15分钟突破,在15分钟开仓。当15分钟跌破中轨,看1小时是否还是突破小时上轨或者突破之后回落但价格没有跌破1小时中轨。如果是,15分钟继续开仓。如果1小时跌破中轨,则看日线是否还是突破日线上轨或者突破之后回落但价格没有跌破日线中轨。如果是,等到1小时候重新突破小时上轨,再看15分钟。如果日线跌破日线中轨,则等到重新突破,再次观察1小时。就此循环。

 回到顶部
帅哥哟,离线,有人找我吗?
FireScript
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2020/2/12 16:53:58    Post IP:183.194.169.103[只看该作者]

就三个周期  每个周期就几种情况。几个周期的情况什么样组合需要开仓 或者加仓 。  你把你开仓 加仓的情况 罗列下。你上面这样描述 没办法理清你的逻辑。


[此贴子已经被作者于2020/2/12 16:58:00编辑过]


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
thomasv
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:53 积分:0 威望:0 精华:0 注册:2019/11/6 22:58:39
  发帖心情 Post By:2020/2/24 0:33:21    Post IP:180.169.30.6[只看该作者]

版主,我的逻辑如下:日线是交易的启动开关,1小时开首仓,15分钟加仓和止损。
步骤一:如果当下的价格突破了日线布林上轨,或者是突破之后回调下穿上轨,但是没有下穿中轨的(换个说话是突破上轨之后的回调,价格在上轨和中轨之间,但必须大于中轨价)。------若以上成立,进入步骤二。

步骤二:1.如果当下的价格突破了1小时布林上轨,或者是突破之后回调下穿上轨,但是没有下穿中轨的(换个说话是突破上轨之后的回调,价格在上轨和中轨之间,但必须大于中轨价)。2.当下的价格要突破此周期前20根k线的高点。若1和2同时满足,在1小时开首仓。-----进入步骤三

步骤三:在15分钟的周期中,1.中轨的值已经大于前一手的买入价,2.当下价格突破了此周期前20根K线的高点。。若1和2同时满足,在15分钟周期加仓。只要价格不低于15分钟的中轨,继续步骤三循环加仓。

步骤四:当下价格若小于15分钟布林中轨,则在15分钟止损。(或者说用15分钟中轨止损)

不知道这个应该怎么写,
这个是多头的思路

 回到顶部
帅哥哟,离线,有人找我吗?
yukizzc
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2020/2/24 9:21:18    Post IP:49.221.253.36[只看该作者]

MID:  MA(CLOSE,26);//布林中轨
UPPER: MID + 2*STD(CLOSE,26);//布林上轨
LOWER: MID - 2*STD(CLOSE,26);//布林下轨

 

//公式1里面的内容就是布林线

day_upper:stkindi('','公式1.UPPER',0,6,0);
day_lower:stkindi('','公式1.lower',0,6,0);
day_mid:stkindi('','公式1.mid',0,6,0);
1hour_upper:stkindi('','公式1.UPPER',0,5,0);
1hour_lower:stkindi('','公式1.lower',0,5,0);
1hour_mid:stkindi('','公式1.mid',0,5,0);

//n用来表示完成第一个步骤
variable:n=0;
IF (CLOSE>day_upper and ref(c,1)<day_upper and n=0) or (close<day_upper and close>day_mid and ref(close,1)>day_upper and n=0) then
begin
  n:=1;
END

//首次开仓
ref_hh:=ref(hhv(close,20),1);
IF (CLOSE>1hour_upper and ref(c,1)<1hour_upper and n=1) or (close<1hour_upper and close>1hour_mid and ref(close,1)>1hour_upper and n=1) then
begin
  if close>ref_hh and holding=0 then
  BEGIN
   buy(1,1,marketr);
  end
END

 

//循环加仓
IF (CLOSE>1hour_upper and ref(c,1)<1hour_upper and n=1) or (close<1hour_upper and close>1hour_mid and ref(close,1)>1hour_upper and n=1) then
begin
  if close>ref_hh and holding>0 and MID>enterprice then
  BEGIN
   buy(1,1,marketr);
  end
END

if close<mid and holding>0 then
begin
 n:=0;
 sell(1,holding,marketr);
end


 回到顶部
总数 17 上一页 1 2