- 精华
- 0
- 在线时间
- 224 小时
- UID
- 19913
- 积分
- 634
- 帖子
- 92
- 阅读权限
- 60
- 注册时间
- 2010-11-18
- 最后登录
- 2013-12-25
- 精华
- 0
- UID
- 19913
- 积分
- 634
- 帖子
- 92
- 主题
- 13
- 阅读权限
- 60
- 注册时间
- 2010-11-18
- 最后登录
- 2013-12-25
|
类似于这套系统- //------------------------------------------------------------------------
- // 简称: B1
- // 名称:
- // 类别: 公式应用
- // 类型: 用户应用
- // 输出:
- //------------------------------------------------------------------------
- Params
- Numeric Lot(1); //交易仓位
- Numeric OffsetPoint(2); //滑点
- Numeric MoneyLoss(0.2); //亏损平仓值
- Numeric PercentOfRange(0.3);
-
- Vars
- String name;
-
- Numeric bTime; //Bar的建立时间
- Numeric Offset; //滑点
- NumericSeries Position; //仓位
- NumericSeries estP; //极值
- NumericSeries ExitP; //止损线
- NumericSeries Trade;
- NumericSeries Up;
- NumericSeries Down;
- Numeric DayOpen;
- Numeric preDayRange;
- Numeric UpperBand;
- Numeric LowerBand;
- Bool BarUp;
- Bool BarDown;
- Bool bTimeCon;
- Begin
- If(Date != Date[1] And High == Low) Return;//接近涨跌停板时不做交易
- bTime = IntPart(Time*10000);
- Offset = OffsetPoint* PriceScale*MinMove;
- Up = OpenD(0) + (HighD(1) - LowD(1))*PercentOfRange;
- Down = OpenD(0) - (HighD(1) - LowD(1))*PercentOfRange;
- DayOpen = OpenD(0);
-
- BarUp = Open > Up;
- BarDown = Open < Down;
- bTimeCon = (bTime > 0910) And (bTime < 1456);
-
- If(Position > 0 And estP < High) estP = High[1];
- If(Position < 0 And estP > Low) estP = Low[1];
- If(Position > 0)
- ExitP = estP * (100 - MoneyLoss) / 100;
- Else
- ExitP = estP * (100 + MoneyLoss) / 100;
- If(Trade == 1 And Low < Up) Trade = 0;
- If(Trade == 2 And High > Down) Trade = 0;
- PlotNumeric("UpperBand",Up);
- PlotNumeric("LowerBand",Down);
- PlotNumeric("MidLine",DayOpen);
-
- If(bTimeCon)
- {
- If(Position == 0)
- {
- If(BarUp And Trade != 1) //Long Open
- {
- Buy(lot,Open);
- Position = lot;
- estP = Up;
- ExitP = Up;
- }
-
- If(BarDown And Trade != 2)
- {
- SellShort(lot,Open);
- Position = lot * -1;
- estP = Down;
- ExitP = Down;
- }
- }
- Else
- If(Position != 0)
- {
- If(Position > 0 And Low < DayOpen)
- {
- Sell(lot,DayOpen);
- Position = 0;
- Commentary("1");
- Trade = 1;
- }
-
- If(Position < 0 And High > DayOpen)
- {
- BuyToCover(lot,DayOpen);
- Position = 0;
- Commentary("2");
- Trade = 2;
- }
-
- If(Position > 0 And Low < ExitP)
- {
- Sell(lot,ExitP);
- Position = 0;
- Commentary("3");
- Trade = 1;
- }
-
- If(Position < 0 And High > ExitP)
- {
- BuyToCover(lot,ExitP);
- Position = 0;
- Commentary("4");
- Trade = 2;
- }
- }
- }
-
- If(bTime > 1429)
- {
- If(Position != 0)
- {
- If (Position < 0)
- BuyToCover(lot,Open);
- Else
- Sell(lot,Open);
- }
- Position = 0;
- }
- Commentary("Position = "+Text(Position));
- Commentary("Trade = "+Text(Trade));
- Commentary("ExitP = "+Text(ExitP));
- End
- //------------------------------------------------------------------------
- // 编译版本 GS2010.12.08
- // 用户版本 2011/04/18 10:11
- // 版权所有 illidanly
- // 更改声明 TradeBlazer Software保留对TradeBlazer平台
- // 每一版本的TrabeBlazer公式修改和重写的权利
- //------------------------------------------------------------------------
复制代码 |
|