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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → buyshort, BUY指令能否按指定价格下单成交,或者按上个周期的收盘价下单成交

   

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


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

主题:buyshort, BUY指令能否按指定价格下单成交,或者按上个周期的收盘价下单成交

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


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2018/9/12 8:54:21 [显示全部帖子]

1、开、平仓语句可以指定价格,比如buy(1,1,limit,open);按开盘价限价委托;
2、也是可以的,还是需要指定下单价格,上周期收盘价: ref(close,1);

用法:BUY(COND,V,Type,P);表示当COND条件成立时,买入V股(手)当前品种,TYPE表示买入类型P表示买入价格,所有参数均可以省略。
V:买入股(手)数或买入资金百分比(V%),若为0或者省略表示100%,若使用实际资金百分比买入请参考PERTRADER函数;
TYPE:可以是本周期收盘:THISCLOSE , 市价:MARKET, 限价单:LIMIT;
P:对于限价单需要指定的买入价格

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


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2018/11/15 13:16:26 [显示全部帖子]

1、语句1,2是同时分别报单的,假设语句1没成交,语句2在满足成交条件的情况下还是会成交的;
2、您的需求是想同时报单,还是要语句1成交后,才让语句2报单呢? 

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


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2018/11/15 13:34:30 [显示全部帖子]

1、需要在开平仓语句后同时加入 orderqueue 函数,例如:
SELLSHORT(holding<0,MOUNT,limit,close),ORDERQUEUE;
BUY(holding=0,mount,limit,close),ORDERQUEUE;

2、在交易 》 下单设置 》 程序化交易 》orderqueue顺序下单中设置,待之前报单完全成交后再报单,如下图:

图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2018/11/15 13:36:42编辑过]

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


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2018/11/15 15:25:00 [显示全部帖子]

1、假设第一次平仓成交后,第一次的开仓没成交,那第一次的开仓还是处于挂单状态,不会影响第二次平、第二次开的正常委托和报单; 

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


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2018/11/16 9:11:45 [显示全部帖子]

在图表程序化中有个撤单追单的功能设置,只能是针对该笔订单的,比如说多少秒后撤单再追单或者是多少秒后直接撤单,而不是说下个信号触发才去撤上一笔委托单;
交易 》 下单设置 》 程序化交易 》 程序化交易撤单追单设置

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

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


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2018/11/19 9:47:25 [显示全部帖子]

1、图表程序化只能使用 11楼 提供的追撤单功能,程序中控制追撤单只能在后台程序化中使用,因为图表并未考虑到实际账户中的成交情况,它认为触发信号了就是成交了;
2、那你需要把收盘价满足一定条件 写入buy 的条件中,比如BUY(holding=0 and 收盘价满足一定条件,mount,limit,close - 10);

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


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2018/11/19 10:35:51 [显示全部帖子]

假设:  满足信号委托报单, 委托价:close-10 ,比如最新价是4000,那委托价就是3990 。

1、在没满足委托单成交的情况下,该笔委托会一直处于挂单状态,直到满足条件后成交(价格到达3990后成交),不过3990也有可能不成交,因为成交规则是:价格优先,时间优先,  3989一般都能成交了。

2、不存在只在下一根K线成交,下下根K就不成交的



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


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2018/11/26 9:33:35 [显示全部帖子]

先和您确认下: 您上面所说的是 实盘交易,还是 策略回测呢? 两者是有很大区别的

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


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2018/11/26 9:56:06 [显示全部帖子]

1、策略回测的成交规则和实盘不一样。 
回测中只要委托价格在本根K线范围内,就会视为成交;不在本根K线范围之内,就不会成交,更不存在委托挂单到后面K线成交的情况;

2、如要在本根K线范围外也能成交,需要在开、平仓语句后加上 IGNORECHECKPRICE 函数;加上该函数后无论委托价格在不在本根K线范围内,都视为成交。

3、并且在回测中,market 和 marketr ,limit 和 limitr 都是有区别的,一个是按本周期价格,一个是按次周期,您可以详细看下该函数说明;
[此贴子已经被作者于2018/11/26 9:58:46编辑过]

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


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2018/11/26 11:27:25 [显示全部帖子]

1、首先和您描述下策略回测的规则:在没有使用IGNORECHECKPRICE函数的情况下,如果委托价格不在K线范围内,是无法成交的;图表的回测中更是无法模拟委托挂单待成交这样的情况。
2、您的需求只能变通来处理,以平空开多举例: 
a. 出现平空开多信号后,先以市价平空;
b. 然后在平空开多信号的后续K线中,判断当前K线是否在“出信号K线的收盘-0.5” 的价格范围之内,在的话则以“出信号K线的收盘-0.5” 进行成交;

代码案例,您可以参考以下案例对您的策略进行修改:
t1: BARSLAST(buycon);//上一次平空开多的位置
t2: VALUEWHEN(ref(t1,1),close);//上一次平空开多位置的收盘价;

if 平空开多信号 then SELLSHORT(holding<0,holding,market);//平空
if (t2-0.5) <= high and (t2-0.5) >= low then buy(holding=0,1,limitr,t2-0.5);//如果当前K线价格在“出信号K线的收盘-0.5” 的价格范围之内则开多


 回到顶部
总数 11 1 2 下一页