多次累计亏损到定额才加仓的问题。 [开拓者 TB]
- 咨询内容:
多次累计亏损到定额才加仓的问题:
 亏损即加仓容易实现。
 但多次交易后累计亏损到一定金额才加仓,怎么写呢?
 举例:
 
 1手交易:-500,+100,-600,累计盈利:-1000元,转2手
 
 2手交易:+100,-600,累计盈利:-1000*1-500*2<=-2000,转3手
 
 3手交易:-50,+1100,累计盈利:-1000*1-500*2+3*1050>=1000,恢复1手仓位。
 
 
-  TB技术人员:
给你一个亏损加仓的例子作为参考,你自己改改吧
 // 简称: DoubleMA_01
 // 名称: 双均线策略_亏损加仓
 // 类别: 公式应用
 // 类型: 用户应用
 // 输出:
 //------------------------------------------------------------------------
 
 Params
 Numeric FastLength(5);
 Numeric SlowLength(20);
 Numeric Lots(1); // 基本下单单位
 Numeric MaxLots(10); // 最大下单单位
 Vars
 NumericSeries AvgValue1;
 NumericSeries AvgValue2;
 NumericSeries myLots; // 每次下单的手数
 NumericSeries myNetProfit; // 累计的最大净利润
 Begin
 AvgValue1 = AverageFC(Close,FastLength);
 AvgValue2 = AverageFC(Close,SlowLength);
 // PlotNumeric("MA1",AvgValue1);
 // PlotNumeric("MA2",AvgValue2);
 
 If(TotalTrades == 0)
 {
 myLots = Lots;
 myNetProfit = 0;
 }
 
 
 If(MarketPosition == 1 And AvgValue1[1] < AvgValue2[1])
 {
 Sell(0,Open);
 If(NetProfit >= myNetProfit[1])
 {
 myLots = Lots;
 }Else
 {
 myLots = Min((myLots[1] + Lots),MaxLots);
 }
 }
 If(MarketPosition == -1 And AvgValue1[1] > AvgValue2[1])
 {
 BuyToCover(0,Open);
 If(NetProfit >= myNetProfit[1])
 {
 myLots = Lots;
 }Else
 {
 myLots = Min((myLots[1] + Lots),MaxLots);
 }
 }
 
 If(MarketPosition != 1 And AvgValue1[1] > AvgValue2[1])
 {
 Buy(myLots,Open);
 }
 If(MarketPosition != -1 And AvgValue1[1] < AvgValue2[1])
 {
 SellShort(myLots,Open);
 }
 
 myNetProfit = Max(myNetProfit[1],NetProfit);
 End
- TB客服: 谢谢!
有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友
可联系技术人员 QQ: 1145508240  进行 有偿 编写!(不贵!点击查看价格!)
                        
相关文章
- 
                        没有相关内容
                       

 
                     会员登录/注册
会员登录/注册