以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  请老师帮我写一段代码:追踪停损开仓  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=63551)

--  作者:飞天橙
--  发布时间:2014/4/5 23:15:33
--  请老师帮我写一段代码:追踪停损开仓
我试了很久还是不能成功,只好求助各位老师,先谢谢了!
这样一种思路用在图表交易里面:
    在某周期下,比如5分钟周期图表里,在满足某种条件,比如kd指标进入超买区时,将第一根k线的最高价定义为“买入价格标准”,如果下一根k线的收盘价高于”买入价格标准“,立即开多仓。如果这根k线的最高价比上根k线的最高价低,曾将”买入价格标准“下移到新的这根k线的最高价,直到未来某根k线的收盘价高于最新的”买入价格标准“开仓成功或者kd指标不在超买区放弃开仓为止。

--  作者:jinzhe
--  发布时间:2014/4/8 8:55:09
--  

variable:hh=0;

if kd进入超买区 then hh:=h;

if close>hh and ref(kd进入超买区,1) then buy.........;

if close>hh and ref(kd进入超买区,1) and h<ref(h,1) then hh:=h;

if enterbars>0 and h>hh or not(kd进入超买区)  then sell........;

 

hh是买入价格标准


--  作者:飞天橙
--  发布时间:2014/4/8 13:12:24
--  
尝试了一下,还是不行哦,请老师再看看:你的代码前3行能够理解,
第4,5行“if close>hh and ref(kd进入超买区,1) and h<ref(h,1) then hh:=h;

if enterbars>0 and h>hh or not(kd进入超买区)  then sell........;

没法理解,

第4行是不是错的??应该是”close<hh。。。。“吧??,进入超买区这个条件用cross来建立吗?比如cross(20,k值),但这样有个问题,如果下根、下下根K线继续下跌,就没法将下移动最新的最高价赋予hh了,我将超买条件设置为“k值<20”也不行,请问如何表达?是不是后面还得跟一条“IF H<HH THEN HH:=H;"这样的代码??


还有,我只是不在超买区就放弃开仓,不是平仓,平仓条件要相同的思路,k线进入超卖区后,记录不断上移的最低价,收盘价跌破最新的最低价平仓,怎么样表达比较好?我试写了一个,大部分信号是正确的,但是总会出现莫明其妙的平仓信号。

[此贴子已经被作者于2014/4/8 13:13:08编辑过]

--  作者:jinzhe
--  发布时间:2014/4/8 13:50:59
--  

前面的你都说对了

 

莫名其妙的平仓体现在哪里?


--  作者:飞天橙
--  发布时间:2014/4/8 16:22:23
--  
我也不知道为什么?就是开仓之后,第二根K线就平仓,根本没有到平仓条件(进入超卖区),感觉好像是开仓后hh值没有复原为0,或者卖出标准LL值没有复原为0 ,我也搞不懂逻辑哪里错了?能不能帮我写一段完整开平仓的代码?让我参考一下。因为我没进行过正规的编程训练,有些程序化的逻辑关系搞不清,先谢了。
当然如果没有进入平仓条件就反转了我有另外的止损止盈出场策略的

--  作者:jinzhe
--  发布时间:2014/4/8 16:42:57
--  

那么你在平仓语句里面把全局变量重置为0

这样的

if 平仓条件 and holding判断 then begin

   平仓语句;

   hh:=0;

end

平仓后重置变量看看