以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://weistock.com/bbs/list.asp?boardid=2)
----  关于交易指令的执行情况问题  (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=158628)

--  作者:Nature
--  发布时间:2017/10/13 14:56:56
--  关于交易指令的执行情况问题
MA1>MA2&&MA1>MA3&&MA2>MA3,BK(1);MA1<MA2&&MA1<MA3&&MA2<MA3,SK(1);
MA1<MA2,SP(1);
MA1>MA2,BP(1);
当满足条件MA1>MA2&&MA1>MA3&&MA2>MA3的当根k线就会开多单,情况是仅仅就是第一根k线开仓,尽管后面开仓之后往后的K线都是满足开仓条件也不会开仓,但是把BK,SK之类的指令模型换成BUY,SELL后开仓之后的很多k线也是会满足开多单的条件,后来发现发生频繁开多单。但是使用BK SK后有些函数是不能用,所以有没有办法可以实现在使用BUY,SELL后,遇到条件只会开第一根K线的单,不会频繁开仓。


--  作者:FireScript
--  发布时间:2017/10/13 15:06:28
--  

可以用holding如下限制下啊:

buy(holding=0,1,market);

 

 


--  作者:banzhuan
--  发布时间:2017/10/13 15:06:35
--  
BK, SK属于旧交易系统,不能和buy,sell混用
buy,sell 你说频繁开多单,具体要看你的代码了

--  作者:Nature
--  发布时间:2017/10/13 15:37:20
--  
有BUY的过滤模型吗?就是在触发条件后直接开仓,过滤掉往后满足条件的K线。仅仅开一次仓


--  作者:qq代人发帖
--  发布时间:2017/10/13 15:38:57
--  

就是2楼的写法用holding过滤


--  作者:Nature
--  发布时间:2017/10/13 15:40:10
--  
感觉新的交易指令没有过滤的机制,
MA1:MA(C,10);
MA2:MA(C,25);
MA3:MA(C,100);
BUY(MA1>MA2&&MA1>MA3&&MA2>MA3,1,MARKETR);
BUYSHORT(MA1<MA2&&MA1<MA3&&MA2<MA3,1,MARKETR);
SELL(MA1<MA2,1,MARKETR);
SELLSHORT(MA1>MA2,1,MARKETR);

MA1:MA(C,10);
MA2:MA(C,25);
MA3:MA(C,100);
MA1>MA2&&MA1>MA3&&MA2>MA3,BK;
MA1<MA2&&MA1<MA3&&MA2<MA3,SK;
MA1<MA2,SP;

这两种一样条件的下,仅仅就是指令不一样的,一种是仅开一个,另一种是连续出现信号就不断开仓

--  作者:FireScript
--  发布时间:2017/10/13 15:41:14
--  

你可以直接搜历史帖,这个限制开仓次数的帖子很多。 搜关键词“限制开仓”或者其他的都行。


--  作者:Nature
--  发布时间:2017/10/13 15:42:53
--  
看下介绍函数是持仓量。。
好像并不是过滤信号,那这个函数该怎么用可以过滤掉多余的信号

--  作者:Nature
--  发布时间:2017/10/13 15:43:26
--  
好的谢谢
--  作者:FireScript
--  发布时间:2017/10/13 15:47:11
--  
以下是引用Nature在2017/10/13 15:42:53的发言:
看下介绍函数是持仓量。。
好像并不是过滤信号,那这个函数该怎么用可以过滤掉多余的信号

这个函数这样用是有道理的。你没开仓之前持仓是0,开仓后就不是0 了,把这个作为限制条件,下次开仓之前判断到这个值不是0 就无法开仓了。