public override void OnStrategyStart()
        {
            bars86400 = GetBars(BarType.Time, 86400);

            smd30 = new SMD(bars86400, 30);
            lbd   = new LookBackDays(smd30, lookBackDays, floorAmt, ceilingAmt);
            dbbu  = new DynamicBBU(lbd, bars86400, bolBandTrig, BarData.Close);

            Draw(smd30, 2);
            Draw(lbd, 3);
            Draw(dbbu.SMA, 0);
            Draw(dbbu.BBL, 0);
            Draw(dbbu, 0);

            upBandSeries    = new TimeSeries("upBandSeries");
            dnBandSeries    = new TimeSeries("dnBandSeries");
            buyPointSeries  = new TimeSeries("buyPointSeries");
            sellPointSeries = new TimeSeries("sellPointSeries");

            upBandSeries.Color = Color.Red;
            dnBandSeries.Color = Color.Red;

            Draw(upBandSeries, 0);
            Draw(dnBandSeries, 0);
            Draw(buyPointSeries, 0);
            Draw(sellPointSeries, 0);
        }
Exemple #2
0
        protected override void OnStrategyInit()
        {
            Portfolio.Account.Deposit(AllocationPerInstrument, CurrencyId.USD, "Initial allocation");

            bars60    = new BarSeries("Bars60");
            bars86400 = new BarSeries("Bars86400");

            smd30 = new SMD(bars86400, length);
            lbd   = new LookBackDays(smd30, lookBackDays, floorAmt, ceilingAmt);

            AddGroups();
        }
        protected override void OnBar(Instrument instrument, Bar bar)
        {
            Bars.Add(bar);

            if (lookBackDays.Count == 0)
            {
                return;
            }

            int    length = (int)lookBackDays.Last;
            double a      = SMA.Value(Bars, Bars.Count - 1, length, BarData.Close);

            Log(bar, barsGroup);
            Log(smd.Last, smdGroup);
            Log(lookBackDays.Last, lookBackDaysGroup);
            Log(LookBackDays.Value(smd, smd.Count - 1, 20, 20, 60), lookBackDaysGroup2);

            Console.WriteLine("{0}, {1}", smd.LastDateTime, smd.Last);
            Console.WriteLine("{0}, {1}", lookBackDays.LastDateTime, lookBackDays.Last);
        }
        public override void OnStrategyStart()
        {
            base.OnStrategyStart();

            // 测试用,自定义交易时间,仿真或实盘时可删除
            base.TimeHelper = new TimeHelper(new int[] { 0, 2400 }, 2100, 1458);

            base.TargetPosition         = 0;
            base.DualPosition.Long.Qty  = 0;
            base.DualPosition.Short.Qty = 0;

            bars86400 = GetBars(BarType.Time, 86400);

            smd30 = new SMD(bars86400, 30);
            lbd   = new LookBackDays(smd30, lookBackDays, floorAmt, ceilingAmt);
            dbbu  = new DynamicBBU(lbd, bars86400, bolBandTrig, BarData.Close);

            Draw(smd30, 2);
            Draw(lbd, 3);
            Draw(dbbu.SMA, 0);
            Draw(dbbu.BBL, 0);
            Draw(dbbu, 0);

            upBandSeries    = new TimeSeries("upBandSeries");
            dnBandSeries    = new TimeSeries("dnBandSeries");
            buyPointSeries  = new TimeSeries("buyPointSeries");
            sellPointSeries = new TimeSeries("sellPointSeries");

            upBandSeries.Color = Color.Red;
            dnBandSeries.Color = Color.Red;

            Draw(upBandSeries, 0);
            Draw(dnBandSeries, 0);
            Draw(buyPointSeries, 0);
            Draw(sellPointSeries, 0);

            base.OnStrategyStart();
        }
 protected override void OnStrategyStart()
 {
     smd          = new SMD(Bars, 30);
     lookBackDays = new LookBackDays(smd, 20, 20, 60);
     AddGroups();
 }