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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → [求助]

   

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


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

主题:[求助]

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


加好友 发短信
等级:新手上路 帖子:22 积分:0 威望:0 精华:0 注册:2020/9/16 11:56:42
[求助]  发帖心情 Post By:2020/10/13 17:43:27    Post IP:222.221.221.151[只看该作者]

老师您好!

     我的策略是1分钟周期运行的。我想在我现有的策略条件里加一条策略:调用小时线周期,小时线周期中前一根K线的close小于布林线的upper才启动我的策略运行。

例如:原策略如下

定义各种参数。。。。。。;

开多条件:ma20-ma120>=2 and dea>0 and dea<0.3 and cross(diff,dea);
if 开多条件 and holding=0 then 

BEGIN
buy(1,1,MARKETR);
end
止损;
止盈;

我想请老师帮我加一条:调用小时线周期的如下情况。

定义各种参数:

开多条件:ma20-ma120>=2 and dea>0 and dea<0.3 and cross(diff,dea);

cd2:=前一根小时线的K线close<upper;

if 开多条件 and cd2 and holding=0 then 

BEGIN
buy(1,1,MARKETR);
end
止损;
止盈;
也就是说,我想让我现在的策略只在小时线K线位于boll上轨下方才运行策略。

谢谢老师!!

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


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2020/10/14 8:50:07    Post IP:58.246.57.26[只看该作者]

先修改下系统里的布林线指标:
MID :  MA(CLOSE,M);
UPPER: MID + N*STD(CLOSE,M);
LOWER: MID - N*STD(CLOSE,M);

cd:UPPER>REF(c,1);


然后当前指标下调用下:
cd:stkindi('','BOLL.cd',0,5,0);

把这个cd也作为开仓条件就行了。


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


加好友 发短信
等级:新手上路 帖子:22 积分:0 威望:0 精华:0 注册:2020/9/16 11:56:42
  发帖心情 Post By:2020/10/14 13:44:10    Post IP:222.172.244.133[只看该作者]

谢谢老师!您提到:
先修改下系统里的布林线指标:
MID :  MA(CLOSE,M);
UPPER: MID + N*STD(CLOSE,M);
LOWER: MID - N*STD(CLOSE,M);

我的策略里的布林如下:
先修改下系统里的布林线指标:
MID:  MA(CLOSE,26);//布林中轨
UPPER: MID + 2*STD(CLOSE,26);//布林上轨
LOWER: MID - 2*STD(CLOSE,26);//布林下轨

请问老师需要怎么修改?修改的意义为何,谢谢!!

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


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

 你如果判断的是小时线前一个K的收盘价是否大于upper。那直接就在被调用的指标 里做判断。也就是上面布林指标里加的那个变量cd。否则你在交易指标里至少还需要额外调用下小时线上个周期的额收盘价。所以改布林:1.减少代码量 2.减少不必要的调用。


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


加好友 发短信
等级:新手上路 帖子:22 积分:0 威望:0 精华:0 注册:2020/9/16 11:56:42
  发帖心情 Post By:2020/10/14 15:19:29    Post IP:222.172.244.133[只看该作者]

收到,谢谢老师,我修改了策略,加进了您说的那几个代码,其中有两个CD变量出错。我把其中1个cd改为CD1,应用在图上好像还是有点问题。您帮看看,我改的CD1对不对,谢谢!
MID:  MA(CLOSE,26);//布林中轨
UPPER: MID + 2*STD(CLOSE,26);//布林上轨
LOWER: MID - 2*STD(CLOSE,26);//布林下轨

cd:UPPER>REF(c,1);
cd1:stkindi('','BOLL.cd',0,2,0);

开空条件:(cross(high,upper) and close<=upper) ;


if cd and 开空条件  and holding=0 then 

BEGIN
buyshort(1,1,MARKETR);
end

止盈;
止损;

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


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2020/10/14 15:45:38    Post IP:58.246.57.26[只看该作者]

 你这个布林线和交易代码在一个指标里?

这个
cd:UPPER>REF(c,1);
要在你被调用的指标的代码里面。


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


加好友 发短信
等级:新手上路 帖子:22 积分:0 威望:0 精华:0 注册:2020/9/16 11:56:42
  发帖心情 Post By:2020/10/14 16:00:05    Post IP:222.172.244.133[只看该作者]

是的,布林线它们都在一个指标里。难道我放了个基础严重错误。。。。抱歉老师,我是没半点基础的那种学员。请教我一下,我这个怎么修改修改?谢谢!意思是不是要先新建一个小时线的boll指标,然后再在1分钟线的策略里使用小时线的指标?

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


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

cd是放在你调用的那个指标里面:
这样看明白了吧?

图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:新手上路 帖子:22 积分:0 威望:0 精华:0 注册:2020/9/16 11:56:42
  发帖心情 Post By:2020/10/14 20:18:51    Post IP:222.172.244.133[只看该作者]

谢谢,我明白了,我按照老师您教的做,但是出现了:未定义变量:CD

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20201014201642.png
图片点击可在新窗口打开查看
不知道哪里又弄错了。。。。。

 回到顶部