以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  策略编写求助区  (http://www.weistock.com/bbs/list.asp?boardid=11)
----  请求编写代码  (http://www.weistock.com/bbs/dispbbs.asp?boardid=11&id=8989)

--  作者:shawaverage
--  发布时间:2011/11/16 13:49:22
--  请求编写代码

开多的的条件 收盘价上穿20日均线同时macd金叉形成 仓位初始两手入场

当价格跌破前3根k现的最低价全部出场止损,然后根据入场点位与止损点位差,测算出如果上涨了。我的一手单将在与开仓点位与止损点价差同样的距离止赢一手,另外一手继续持有,止损止赢出场参照前三根k线最低价。具体举个例子

 

比如我做多开仓入场点位在价格100,前三根低点价格是70.那我的入场止损点差30点。两手持仓的话,当跌破70,全部止损出局

如果价格大于开仓价格并持续上涨。我两手中的一手单将在130点止赢一手。另外一手持着。然后当价格继续上涨到170.那么前三根低位在155的话,回落到这点位155.则把剩下的一手平了。当然如价格没在130上方运行,价格回落在入场点位100和第一止赢位范围内。则也平了离场。

 

若跌势中入场,类似做法。


--  作者:26327756l
--  发布时间:2011/11/16 14:49:56
--  
问题正在解决中
--  作者:26327756l
--  发布时间:2011/11/16 15:39:20
--  

variable:chushi=0,diff1=0;

if chushi=0 and close>ma(c,20) and "macd.diff">"macd.dea" then
begin
  sellshort(holding<0,0,market);
  buy(holding=0,2,market);
  chushi:=c;
end
//止损止赢出场参照前三根k线最低价
if  c<llv(l,3) then
begin
sell(holding>0,1,market);
diff1:=chushi-c;
end
//一手单将在与开仓点位与止损点价差同样的距离止赢一手
if c<chushi-diff1 then sell(holding>0,1,market);
if c>chushi+diff1 then sell(holding>0,1,market);
if ENTERBARS>1 and c<chushi-2*diff1 then sell(holding>0,1,market);
if ENTERBARS>1 and c>chushi+2*diff1 then sell(holding>0,1,market);

[此贴子已经被作者于2011-11-16 15:59:50编辑过]