以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://www.weistock.com/bbs/list.asp?boardid=2)
----  如何实现一根K线只有一个信号?  (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=162638)

--  作者:qq代人发帖
--  发布时间:2018/4/10 9:34:35
--  如何实现一根K线只有一个信号?
如何实现一根K线只有一个信号?

--  作者:gxx978
--  发布时间:2018/4/10 9:42:58
--  
这就需要看你的开平仓条件是如何写的了,通过代码逻辑判断来实现。满足开仓条件时,并且其他开仓或平仓条件条件不满足时才触发此信号,这样就不会同时多个信号。
[此贴子已经被作者于2018/4/10 9:43:51编辑过]

--  作者:djhfr
--  发布时间:2018/4/10 15:16:47
--  

平空:SELLSHORT(bp4  and HOLDING<0,1,THISCLOSE);                  //平空信号
开多:BUY(bk1  and    HOLDING=0,1,THISCLOSE);          //开多信号
平多:SELL( sp4  and   holding>0,1,THISCLOSE);                       //平多信号
开空:BUYSHORT(sk1   and HOLDING=0 ,1,THISCLOSE);     //开空信号

为什么这样限制依然会出现同时开平仓。平仓已经限制了有持仓才会触发。


--  作者:banzhuan
--  发布时间:2018/4/10 15:26:19
--  
您是用得固定轮询的模式吗,现在的情况是在同一根K线上开仓了,然后又平掉仓了是吗 ?
--  作者:djhfr
--  发布时间:2018/4/10 15:28:05
--  
逐K,只刷最后一根K。同一根K线上开仓了,然后又平掉仓。请问是怎么设置
--  作者:djhfr
--  发布时间:2018/4/10 15:39:24
--  
如何改写成K线走完?
--  作者:banzhuan
--  发布时间:2018/4/10 15:40:58
--  
您要用全局变量控制一下,在工具 》 数据管理  》 全局变量中设置一个bar,下面是个例子

if EXTGBDATA( \'bar\')<barpos and 开多条件 then
begin
buy()
EXTGBDATASET(\'bar\' , barpos);
end

if EXTGBDATA( \'bar\')<barpos  and 平多条件 then
begin
sell()
end

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

--  作者:djhfr
--  发布时间:2018/4/10 15:48:00
--  

全局变量设置好了。能不能帮我改写一个信号的例子。我复制你的示例修改不通过。

开多:BUY(bk1  and    HOLDING=0,1,THISCLOSE);          //开多信号
平多:SELL( sp4  and   holding>0,1,THISCLOSE);                       //平多信号


--  作者:banzhuan
--  发布时间:2018/4/10 16:07:41
--  
您这样需要建立2个全局变量,分开记录多开和空开,列子如下:
if extgbdata( \'bar\')<barpos and bk1  then
begin
开多:buy(holding=0,1,thisclose);         
extgbdataset(\'bar\' , barpos);
end

if extgbdata( \'bar\')<barpos  and sp4 then
begin
平多:sell(holding>0,1,thisclose);  
end


if extgbdata( \'bar2\')<barpos and sk1  then
begin
开空:buyshort(holding=0 ,1,thisclose);           
extgbdataset(\'bar2\' , barpos);
end

if extgbdata( \'bar2\')<barpos  and bp4 then
begin
平空:sellshort( holding<0,1,thisclose);   
end

[此贴子已经被作者于2018/4/10 16:08:03编辑过]

--  作者:djhfr
--  发布时间:2018/4/10 16:17:45
--  
图片点击可在新窗口打开查看图片点击可在新窗口打开查看依然会出现同根K线开仓并且平仓。