以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  [求助]请编写个程序化组件  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=10405)

--  作者:wjs
--  发布时间:2012/3/5 7:40:57
--  [求助]请编写个程序化组件
  策略是:日内、单笔,跟踪止损平仓。

思路:

一:当开仓(开多条件或开空条件)出现时,先判别是否有持仓、如有:则判别其部位,如方向相同,则不开新仓;如方向相反,则反手。

二:当开仓后,立即启动止损策略,分3步,以天胶做多为例:

1:跟踪止损:固定点位(5)与步长(1)。

2:当跟踪止损到达浮动盈利某个位置(开仓价+5)时,停步跟踪。同时监测浮动盈利。

3:当浮动盈利的1/3大于固定止损停止位(开仓价+5)时,启动比例跟踪止损,即以浮动盈利/3为止损价位跟进。


--  作者:rushtaotao
--  发布时间:2012/3/5 9:37:27
--  

http://www.weistock.com/bbs/dispbbs.asp?BoardID=2&replyID=45547&ID=10283&skin=1您可以先参照这个例子去自己编写一下


--  作者:just
--  发布时间:2012/3/5 9:37:55
--  

在编写中 请稍候


--  作者:wjs
--  发布时间:2012/3/5 17:37:54
--  

谢谢。看过2楼的例子了,可我实在不会编写。此方法在实际操作中使用多日,才敢运用到程序中。最好编写成一个成品,拿来即可使用的。我先给出一个开仓条件,以备检验:

M5:=MA(C,5);

M10:=MA(C,10);

开多条件:=(M5>M10 AND C>M5 AND C>M10,执行开多判断);//执行开多判断,就是1楼的第一步。

开空条件:=(M5<M10 AND C<M5 AND C<M10,执行开空判断);//同上。

//当开仓后,执行就是1楼的第二步。


--  作者:wjs
--  发布时间:2012/3/6 7:34:08
--  
不好意思,昨天晚上试编了许久,对我来说,实在太难。可又十分有用。敬请老师百忙之中编个吧?谢谢!
--  作者:just
--  发布时间:2012/3/6 9:19:51
--  

请稍候,工作人员稍后会回复


--  作者:just
--  发布时间:2012/3/6 10:17:36
--  
你的第二个条件停步跟踪,同时监控浮动盈利具体什么意思,还有第三个条件浮动盈利与止损价位比较??什么意思?
--  作者:wjs
--  发布时间:2012/3/6 12:43:11
--  

回复7楼:

止损全过程分3步:以开多为例

1:开仓后启用固定点位+固定步长的跟踪止损的策略。

2:当止损点大于开仓点,到达一个目标位置时,上述止损方案停。

3:以盈利后的浮动盈利的1/3价位做跟踪止损。

 

[此贴子已经被作者于2012-3-6 12:44:27编辑过]

--  作者:just
--  发布时间:2012/3/6 13:15:22
--  
以下是引用wjs在2012-3-6 12:43:11的发言:

回复7楼:

止损全过程分3步:以开多为例

1:开仓后启用固定点位+固定步长的跟踪止损的策略。

2:当止损点大于开仓点,到达一个目标位置时,上述止损方案停。

3:以盈利后的浮动盈利的1/3价位做跟踪止损。

 

[此贴子已经被作者于2012-3-6 12:44:27编辑过]

条件2 目标位置是什么目标位置,条件3 浮动盈利是具体资金数目,并不是价位 如何来的1/3价位?


--  作者:wjs
--  发布时间:2012/3/6 21:22:26
--  

用过许多期货软件,最喜欢《金字塔》。

回复9楼:

问题2,目标可以是参数N,其实就是跳动几个点,可以直接输入具体数字。因为模型准备专用的。

问题3:盈利是资金,除以每手吨数就是跳动点数了。

 

本来不愿讲得,就是文华是这样实现的。

 

//追踪点差为SL,步长为S
A:=MINPRICE(\'A1205\');//取大豆1205合约的最小变动价位
HH:=HHV(H,BARSBK+1);
LL:=LLV(L,BARSSK+1);
//以上取买开仓以来最高价;卖开仓以来最低价;
AA:=BKPRICE-SL*A+S*A*INTPART((HH-BKPRICE)/(S*A));
BB:=SKPRICE+SL*A-S*A*INTPART((SKPRICE-LL)/(S*A));
//以上取开仓后盈利的止损点差应该是多少
AA<=BKPRICE+5&&((C<=BKPRICE-SL*A)||C<=AA)&&BKPRICE>0,SP;
BB>=SKPRICE-5&&((C>=SKPRICE+SL*A)||C>=BB)&&SKPRICE>0,BP;
//开仓后亏损达到5个点差,平仓;
//开仓后盈利止损价跟随行情每3个点差向上(或向下)浮动一次,回调时触碰止损点位,平仓;
(HH-BKPRICE)/3+BKPRICE>BKPRICE+5&&C<HH-(HH-BKPRICE)/3,SP;
SKPRICE-(SKPRICE-LL)/3<SKPRICE-5&&C>LL+(SKPRICE-LL)/3,BP;

A1,BPK;//多头开仓条件

B1,SPK;//空头开仓条件

AUTOFILTER;

 

仅供参考

 

注:SL=5,S=1