以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  每次开仓价格为固定的买2或者卖2价,要如何写代码。  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=172092)

--  作者:qq代人发帖
--  发布时间:2019/9/19 8:38:52
--  每次开仓价格为固定的买2或者卖2价,要如何写代码。

请教:
假设现在程序螺纹做多现在的价格是3466,程序开仓信号是3466,而我想在3466下面两跳开仓,也就是3464的价格开仓,这个要怎么做

if kd then buy(1,ss,nextopen);
 if kk then buyshort(1,ss,nextopen)
要怎么在这里修改?
反过来,我想开空的时候,想在开仓的上面2跳开仓
这个开仓程序这里要怎么修改?

好假在新版系统里,每次开仓价格为固定的买2或者卖2价,要如何写代码呀

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

[此贴子已经被作者于2019/9/19 8:40:42编辑过]

--  作者:FireScript
--  发布时间:2019/9/19 9:11:39
--  
 1.下单价格可以自行指定的,但是得要限价下单,你原代码中是市价下单。
你这个情况可以用限价下单:

if kd then buy(1,ss,LIMIT,c+2*MINDIFF);//最新价基础上加2跳
if kk then buyshort(1,ss,LIMIT,c-2*MINDIFF);//最新价基础上减2跳


2.如果要固定按照买一或者买2 下单。同样是用限价下单:

但是通常图表上是不能用买一 买二作为下单价格的。因为这些都只有最新值,历史K上无法模拟出这种只有最新值的下单情况。从而会导致信号紊乱吧。因此采取一个折中方案:
下面红色部分做了区分来照顾历史测评的情况:

最新K 也就是实际下单时候 按照卖二价格下单,历史K按照c+2*MINDIFF 处理下。
if kd then buy(1,ss,LIMIT,if(ISLASTBAR,DYNAINFO( 35),c+2*MINDIFF));

其他卖一卖二都在动态函数下面 可以前往查看下。

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

3. 你贴图的那个红框圈出来的地方是旧下单系统。新的交易系统无法使用那个去设置下单价格的。