Exemplo n.º 1
0
 internal SymbolHistory(HistoryView raw)
 {
     Market     = raw.Id.Market;
     Symbol     = raw.Id.Symbol;
     Resolution = raw.Id.Resolution;
     Ticks      = new TimeSerieNavigator <ITradeBar>(raw.Ticks);
 }
Exemplo n.º 2
0
 public EMA(int emaPeriod, Func <T, double> valueSelector, TimeSerieNavigator <T> signal, DateTime warmUpTime)
     : base("EMA", signal, warmUpTime)
 {
     ValueSelector = valueSelector;
     Period        = emaPeriod;
     Alpha         = 1d / Period;
 }
Exemplo n.º 3
0
 internal SymbolHistory(HistoryView raw, DateTime startOfData, DateTime endOfData)
 {
     Market     = raw.Id.Market;
     Symbol     = raw.Id.Symbol;
     Resolution = raw.Id.Resolution;
     Ticks      = new TimeSerieNavigator <ITradeBar>(raw.Ticks.Where(t => t.Time >= startOfData && t.Time <= endOfData));
 }
Exemplo n.º 4
0
 /// <summary>
 /// Initializes a new instance of the <see cref="MeanAndVariance"/> class using the specified name and period.
 /// </summary>
 public ZeroLagMA(string name, int period, TimeSerieNavigator <ITradeBar> chart, DateTime warmUpTime)
     : base(name, chart, warmUpTime)
 {
     Period  = period;
     Inputs  = new RollingWindow <ITradeBar>(Period);
     Outputs = new RollingWindow <ZeroLagMARecord>(Period);
 }
Exemplo n.º 5
0
 public AverageTrueRange(string name, int period, TimeSerieNavigator <ITradeBar> chart, DateTime warmUpTime) :
     base(name, chart, warmUpTime)
 {
     TrueRanges = new RollingWindow <IndicatorDataPoint>(period + 1);
     Period     = period;
     TrueRange  = new TrueRange($"{name} Companion");
 }
Exemplo n.º 6
0
 public BollingerBands(string name, int period, double deviation, TimeSerieNavigator <ITradeBar> data, DateTime warmUpTime)
     : base(name, data, warmUpTime)
 {
     MeanAndVariance = new MeanAndVariance($"{name} Companion", period);
     Period          = period;
     Deviation       = deviation;
 }
Exemplo n.º 7
0
        public Indicator(string name, TimeSerieNavigator <TIn> signal, DateTime warmUpTime)
            : this(name)
        {
            Name   = name;
            Signal = new TimeSerieNavigator <TIn>(signal);
            Signal.SeekNearestBefore(warmUpTime);
            while (Signal.MoveNext())
            {
                this.Update(Signal.Current);
            }

            signal.OnNewRecord += rec => Update(rec);
        }
Exemplo n.º 8
0
        public virtual Task <TimeSerie <ITradeBar> > GetHistoryNavigator(DateTime historyStartTime)
        {
            //todo fetch history from database
            TimeSerie <ITradeBar> newNavigator = new TimeSerie <ITradeBar>();

            //consolidate the currently available data
            using (var navigator = new TimeSerieNavigator <ITradeBar>(this.DataSource.Ticks))
            {
                //add all records up to current time
                navigator.SeekNearestBefore(historyStartTime);
                while (navigator.MoveNext() && navigator.Time <= this.DataSource.Ticks.Time)
                {
                    newNavigator.AddRecord(navigator.Current);
                }
            }
            return(Task.FromResult(newNavigator));
        }
Exemplo n.º 9
0
 /// <summary>
 /// Initializes a new instance of the <see cref="MeanAndVariance"/> class using the specified period.
 /// </summary>
 public ZeroLagMA(SymbolInfo symbol, int period, TimeSerieNavigator <ITradeBar> chart, DateTime warmUpTime) :
     this($"ZLMA {symbol.Key} {period}", period, chart, warmUpTime)
 {
 }
Exemplo n.º 10
0
 public SweptArea(string name, int period, TimeSerieNavigator <ITradeBar> candles)
     : base(name)
 {
     Period = period;
     Inputs = new RollingWindow <IBaseData>(period);
 }
Exemplo n.º 11
0
 /// <summary>
 /// Initializes a new instance of the <see cref="MeanAndVariance"/> class using the specified period.
 /// </summary>
 public MeanAndVariance(string name, int period, TimeSerieNavigator <ITradeBar> chart, DateTime warmUpTime)
     : base(name, chart, warmUpTime)
 {
     Inputs = new RollingWindow <ITradeBar>(Period);
     Period = period;
 }
Exemplo n.º 12
0
 public TrueRange(string name, TimeSerieNavigator <ITradeBar> chart, DateTime warmUpTime) :
     base(name, chart, warmUpTime)
 {
 }
Exemplo n.º 13
0
 public HighPass(string name, int cutOffPeriod, TimeSerieNavigator <TIn> signal, DateTime warmUpTime)
     : base(name, signal, warmUpTime)
 {
     CutoffPeriod = cutOffPeriod;
     alpha        = (double)CutoffPeriod / (1 + CutoffPeriod);
 }
Exemplo n.º 14
0
 public MarketMeannessIndex(string name, int period, TimeSerieNavigator <ITradeBar> chart) : base(name)
 {
     Period = period;
     Inputs = new RollingWindow <ITradeBar>(period);
 }