Заинтересовало

Цитата Сообщение от viktan Посмотреть сообщение
...делать расчет ренко баров внутри бота...
Сделал набросок:
Код:
using System;
using System.Linq;
using cAlgo.API;
using cAlgo.API.Indicators;
using cAlgo.API.Internals;
using cAlgo.Indicators;

namespace cAlgo.Robots
{
    [Robot(TimeZone = TimeZones.UTC, AccessRights = AccessRights.None)]
    public class My_RenkoRobot : Robot
    {
        [Parameter("Renko (Pips)", DefaultValue = 10.0, MinValue = 0.1, Step = 1)]
        public double RenkoPips { get; set; }

	protected class Brick
        {
            public double Open { get; set; }
            public double Close { get; set; }
        }

        protected List<Brick> Bricks = new List<Brick>();

        private double closeLastValue, renkoPips, renkoLastValue;
	private MarketSeries M1;

        protected override void OnStart()
        {
	    // ...
            renkoPips = RenkoPips * Symbol.PipSize;
            renkoLastValue = 0;
	    M1 = MarketData.GetSeries(TimeFrame.Minute);

            if (renkoLastValue == 0)
            {
                var open = M1.Open.LastValue;

                renkoLastValue = open - (open % renkoPips) + renkoPips / 2;
            }
	    // ...
	}

        protected override void OnTick()
        {
	    // ...
            closeLastValue = M1.Close.LastValue;

            while (closeLastValue >= renkoLastValue + renkoPips * 1.5)
            {
                renkoLastValue += renkoPips;
                Bricks.Insert(0, new Brick 
                {
                    Open = renkoLastValue - renkoPips / 2,
                    Close = renkoLastValue + renkoPips / 2
                });
            }

            while (closeLastValue <= renkoLastValue - renkoPips * 1.5)
            {
                renkoLastValue -= renkoPips;
                Bricks.Insert(0, new Brick 
                {
                    Open = renkoLastValue + renkoPips / 2,
                    Close = renkoLastValue - renkoPips / 2
                });
            }
	    // ...
	}
    }
}
В коде, как я понимаю, строятся "текущие" ренко.
Вот только не придумаю, как построить "исторические" ренко.
Может, подскажете, что нужно добавить\убавить в коде?