您现在的位置:程序化交易>> 股票公式>> 其他>> 其他软件知识>>正文内容

飞狐金魔方大交易师智能交易使用教程(4)-分批开平仓 [飞狐金魔方]

//-------金魔方智能交易公式--------------
//例4_1 区间突破分批策略
{策略:
1.允许连续买入2次
2.突破20周期高点买入1次,该仓位命名为'Buy1'
3.突破50周期高点买入1次,该仓位命名为'Buy2'
4.跌破10周期低点卖出'Buy1'的仓位
5.跌破25周期低点卖出'Buy2'的仓位
}
Buy1: HHV(H,20),Shift1;
Buy2: HHV(H,50),Shift1;
Sell1: LLV(L,10),Shift1;
Sell2: LLV(L,25),Shift1;
AllowSameEntries(2);
//if EntryName <> 'Buy1' then
  Buy('',1,Buy1+MinDiff,-1,OT_STOP,OB_NEXTBAR,'Buy1');
//if EntryName <> 'Buy2' then
  Buy('',1,Buy2+MinDiff,-1,OT_STOP,OB_NEXTBAR,'Buy2');
Sell('',1,Sell1,-1,OT_STOP,OB_NEXTBAR,'Sell1') from 'Buy1';
Sell('',1,Sell2,-1,OT_STOP,OB_NEXTBAR,'Sell2') from 'Buy2';
{
注解:
1.MinDiff 为价格最小变动单位。
2.用EntryName函数识别已有哪个信号的仓位。
  但因为即使允许连续同向开仓,也不允许连续开相同开仓名的仓,
  所以,EntryName判断已有哪种信号持仓的语句可以不用。
3.平仓指令函数后用from指定平掉哪个信号的仓位。
}

 

 

 


4_1.gif

 


 

右键菜单【查看测评报告】的交易明细:


 

4_1.jpg

 


 

可见,Sell1Buy1Sell2Buy2分别一一配对,这样我们就可分别控制不同的仓位。


 

再看一个早盘区间突破分批平仓日内交易策略,公式如下:

 

 

//-------金魔方智能交易公式--------------
//例4_2 早盘区间突破分批平仓策略
//用于5分钟周期
{策略:
1.根据上午10点前的价格波动范围画出最高价水平线
2.下午14点前,价格突破区间高点买入2口
3.跌破买入价以下20点清仓止损
4.涨至买入价以上30点止盈其中1口
5.当天若有亏损交易,不再开新仓
6.日内交易,收市前清仓
}
input:
  早盘终点时间(1000), //10:00
  开仓结束时间(1400); //14:00
variable:
  ID(-1);  //趋势线标识号,赋初值-1
if Date <> Date[1] then begin  //新交易日开始
  RngH := High;
  ID := TL_new(Date,Time,RngH,Date,Time,RngH);  //新建画线
end
 
if Time < 早盘终点时间*100 then begin //上午10:00前的最高价作为区间高点
  RngH := Max(High, RngH);
end

//随时间调整区间高点水平线
TL_SetBegin(ID, TL_GetBeginDate(ID), TL_GetBeginTime(ID), RngH);
TL_SetEnd(ID, Date, Time, RngH);

bTradeTime := Time >= 0955*100 And Time < 开仓结束时间*100; //交易时间
if bTradeTime And DailyLosers(Date,0)<1 then //
  Buy('', 2, RngH, -1, OT_STOP, OB_NEXTBAR, '买入');  
if MarketPosition = 1 then  begin  //若持多头仓
  Sell('', DEFAULT, EntryPrice - 20, -1, OT_STOP, OB_NEXTBAR, '止损');  
  if CurrentContracts = 2 then
    Sell('', 1, EntryPrice + 30, 0, OT_LIMIT, OB_NEXTBAR, '止盈');  
end
SetExitOnClose; //收市前清仓
{
注解:
1.画线函数TL_New、TL_SetBegin、TL_SetEnd用于画出区间通道
2.5分钟周期,9:55 的下一个周期开始交易
  金魔方以K线开始时间作为K线的时间
3.DailyLosers(Date,0)取得当日亏损交易次数
4.EntryPrice为开仓价,对多头开仓而言就是买入价
5.CurrentContracts取得当前持仓数量
}



4_2.gif

 


 

右键菜单【查看测评报告】的交易明细:


4_2.jpg

 


可见,开仓2口的单被拆成2笔,1笔止盈,1笔日内交易平仓。

从这个公式,我们可以看出它逐根计算的机制:在每天开盘的那根K线创建1条新的趋势线,然后随着下1根K线的不断增加,调整趋势线的起点和终点。
 

 

有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友

可联系技术人员 QQ: 511411198  点击这里给我发消息进行 有偿 编写!不贵!点击查看价格!


【字体: 】【打印文章】【查看评论

相关文章

    没有相关内容