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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 250秒内同向不重复下单

   

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


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

主题:250秒内同向不重复下单

帅哥哟,离线,有人找我吗?
诗与远方
  21楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:84 积分:0 威望:0 精华:0 注册:2020/12/18 10:31:16
  发帖心情 Post By:2020/12/30 12:05:22    Post IP:14.25.129.54[只看该作者]

//中间变量
MA1:=MA(CLOSE,A);
MA2:=MA(CLOSE,B);
MA3:=MA(CLOSE,D);

手数:=ss;
//交易条件
开多条件:=CROSS(MA1,MA2)AND(MA2>MA3)
开空条件:=CROSS(MA2,MA1)AND(MA2<MA3) 
 
if TYPEBAR(1,1)>=180 and  开多条件 then buy(1,5,market);//开多条件
if TYPEBAR(1,3)>=180 and 开空条件  then buyshort(1,5,market);//开空条件

//移动止损部分************************
//求出持仓以来的最高价或最低价,通过与当前价做比较,判断资金回落的幅度
hh:=hhv(h,enterbars+1);
ll:=llv(l,enterbars+1);
if c<hh-20*mindiff and holding>0 then sell(1,holding,marketr);
if c>ll+20*mindiff and holding<0 then sellshort(1,holding,marketr);
//*************************************

开多:BUY(开多条件,手数,MARKET);
开空:BUYSHORT(开空条件,手数,MARKET);  

cd:time=30000  or time=190000;//2个收盘K上强平。
 if cd then
begin
强平1:sell(holding>0,holding,market);
强平2:sellshort(holding<0,holding,market);  
end

if TYPEBAR(1,1)>=180 and  开多条件 then buy(1,5,market);//开多条件
if TYPEBAR(1,3)>=180 and 开空条件  then buyshort(1,5,market);//开空条件------公测为未定义变量,怎么办?


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


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

ss你定义了吗?我本地测试只有这个ss没有定义。


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


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

 开多条件:=CROSS(MA1,MA2)AND(MA2>MA3);
开空条件:=CROSS(MA2,MA1)AND(MA2<MA3);

注意下基本规范啊。这个“;”缺失了。


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


加好友 发短信
等级:新手上路 帖子:84 积分:0 威望:0 精华:0 注册:2020/12/18 10:31:16
  发帖心情 Post By:2020/12/30 12:18:59    Post IP:14.25.129.54[只看该作者]

参数名1,缺省1,最小1,最大1000,步长1,我是这样写的!

 回到顶部
帅哥哟,离线,有人找我吗?
诗与远方
  25楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:84 积分:0 威望:0 精华:0 注册:2020/12/18 10:31:16
  发帖心情 Post By:2020/12/30 12:23:22    Post IP:14.25.129.54[只看该作者]

加了;;;后。函数TYPEBAR所调用的参数与预定义参数不符?----现在显示!!

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


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

 我直接给你重构了代码。你注意看注释里面的说明。

INPUT:A(5,1,100,1),B(10,1,100,1),D(20,1,100,1),SS(1,1,100,1);//均线参数,下单手数 都在这里调整参数即可
MA1:MA(CLOSE,A);
MA2:MA(CLOSE,B);
MA3:MA(CLOSE,D);

手数:=ss;
//交易条件
开多条件:=CROSS(MA1,MA2) AND (MA2>MA3);
开空条件:=CROSS(MA2,MA1) AND (MA2<MA3);

DRAWICON(开多条件,h,1);//显示下开仓条件位置,但是不一定开仓,因为还有开仓间隔的限制。
DRAWICON(开空条件,l,2);



//移动止损部分************************
//求出持仓以来的最高价或最低价,通过与当前价做比较,判断资金回落的幅度
hh:=hhv(h,enterbars+1);
ll:=llv(l,enterbars+1);
if c<hh-20*mindiff and holding>0 then sell(1,holding,marketr);
if c>ll+20*mindiff and holding<0 then sellshort(1,holding,marketr);

if (TYPEBAR(1,1)>=180 OR TYPE(1)=0) and  开多条件 then 开多:buy(HOLDING=0,5,market);//开多条件
if (TYPEBAR(1,3)>=180 OR TYPE(1)=0) and 开空条件  then 开空:buyshort(HOLDING=0,5,market);//开空条件




cd:=time=30000  or time=190000;//2个收盘K上强平。
 if cd then
begin
强平1:sell(holding>0,holding,market);
强平2:sellshort(holding<0,holding,market);  
end

持仓:holding;
资金:ASSET;


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


加好友 发短信
等级:新手上路 帖子:84 积分:0 威望:0 精华:0 注册:2020/12/18 10:31:16
  发帖心情 Post By:2020/12/30 13:52:21    Post IP:14.25.129.54[只看该作者]

多谢

 回到顶部
帅哥哟,离线,有人找我吗?
诗与远方
  28楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:84 积分:0 威望:0 精华:0 注册:2020/12/18 10:31:16
  发帖心情 Post By:2020/12/31 13:07:00    Post IP:14.25.129.54[只看该作者]

模拟测试结果:1.只有空单信号发出,没有多单信号发(但图表有显示信号)。2.空单不加仓,同向15分钟以后没发出空单信号(但图表有显示信号)。3.收盘不强平(但图表有显示强平),而是下次开盘强平。4.INPUT:A(5,1,100,1),B(10,1,100,1),D(20,1,1000,1),SS(1,1,100,1);//均线参数,下单手数 都在这里调整参数即可---请问这个位置最多可以设置多少条均线,均线最大值可以设置多少??

 回到顶部
帅哥哟,离线,有人找我吗?
诗与远方
  29楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:84 积分:0 威望:0 精华:0 注册:2020/12/18 10:31:16
  发帖心情 Post By:2020/12/31 13:15:35    Post IP:14.25.129.54[只看该作者]

请问止损是止损所有的单吗?以及强平是平所有的单吗?

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


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

1.
这2条先更新下,处理下只开一个方向仓位问题:
if (TYPEBAR(1,1)>=180 OR TYPE(1)=0 OR NOT(TYPEBAR(1,1))) and  开多条件 then 开多:buy(HOLDING=0,5,market);//开多条件
if (TYPEBAR(1,3)>=180  OR TYPE(1)=0 OR NOT(TYPEBAR(1,3))) and 开空条件  then 开空:buyshort(HOLDING=0,5,market);//开空条件

2.没有加仓逻辑。你原先这里也只有开仓,止损平仓,到时间强平的逻辑。就这三个。

3.“收盘不强平(但图表有显示强平),而是下次开盘强平”这个首先只能在实际交易时候 用固定轮询模式才行。你如果是五秒周期,这个轮询周期最好小于5秒,否则会可能检测不到信号。另外回测里面也是无法体现在结束之前强平的逻辑的。 当然这里也可以做一些优化。只是我需要知道你使用的走完K还是固定轮询,如果是轮询 设置的轮询是多少秒呢?周期是五秒吗?

4.
下单手数 都在这里调整参数即可---请问这个位置最多可以设置多少条均线,均线最大值可以设置多少”都是100.这个你可以自己改的。改上限是可以的。



命数如织,当如磐石。
 回到顶部
总数 44 上一页 1 2 3 4 5 下一页