Пример #1
0
        protected bool InitCandles(CMarket market, CBitcoinCharts _candleSource)
        {
            //http://api.bitcoincharts.com/v1/trades.csv?symbol=mtgoxUSD

            /*
             * occorre un ciclo while che esamina bitcoincharts e cerca di estrarre i dati
             */

            CUtility.Log("reading candles");
            var candleWidth  = market.CandleMaker.CandleWidth;
            var candleLength = market.CandleMaker.QueueLength();

            var duration = candleWidth * candleLength;
            var from     = DateTime.Now.ToUniversalTime().AddSeconds(-duration);
            var to       = DateTime.Now.ToUniversalTime();
            var source   = _candleSource;
            var res      = source.GetTrades(from, to);

            CUtility.Log("creating candles");
            foreach (Trade trade in res)
            {
                try
                {
                    this.Buy    = trade.Price;
                    this.Date   = trade.Date;
                    this.Volume = trade.Amount;
                    OnTicker();

                    /*
                     * var date = trade.Date;
                     * var value = trade.Price;
                     * var amount = trade.Amount;
                     *
                     * // feed the candlemaker
                     * if (this.CandleMaker != null)
                     * {
                     * this.CandleMaker.CandleBuilder(date, value, amount);
                     * }
                     *
                     * if (this.CandleMakerHourly != null)
                     * {
                     * this.CandleMakerHourly.CandleBuilder(date, value, amount);
                     * }
                     */
                }
                catch (Exception ex)
                {
                    CUtility.Log(ex.Message);
                    //throw;
                }
            }
            CUtility.Log("start trading");
            //throw new NotImplementedException();
            return(true);
        }
Пример #2
0
        public bool Init(CMarket market)
        {
            _sql = new SQLiteMtGox()
            {
                Currency  = this.Currency,
                StartTime = this.StartTime,
                EndTime   = this.EndTime
            };

            return(_sql.Start());
        }
Пример #3
0
        protected int CurrentCandle     = 1; // il valore 0 contiene le intestazioni


        public virtual bool Init(CMarket market)
        {
            // i file sono in formato csv oppure in formato bitcoinchart, li distinguo dall'estensione
            // si trovano in \data

            IsFileCsv = this.FileName.ToLower().EndsWith(".csv");

            // creo una lista di stringhe
            using (var fileStream = new StreamReader(FileName))
            {
                var file = fileStream.ReadToEnd();
                Candles = file.Split(new Char[] { '\n' }).ToList();
            }
            return(true);
        }
Пример #4
0
        // }


        public bool Init(CMarket market)
        {
            //http://api.bitcoincharts.com/v1/trades.csv?symbol=mtgoxUSD

            /*
             * occorre un ciclo while che esamina bitcoincharts e cerca di estrarre i dati
             */

            CUtility.Log("reading candles");
            var candleWidth  = market.CandleMaker.CandleWidth;
            var candleLength = market.CandleMaker.QueueLength();

            var duration = candleWidth * candleLength;
            var from     = DateTime.Now.ToUniversalTime().AddSeconds(-duration);
            var to       = DateTime.Now.ToUniversalTime();
            var source   = new DataProvider.Sources.CBitcoinChartsMtgoxBtcusd();
            var res      = source.GetTrades(from, to);

            CUtility.Log("creating candles");
            foreach (Trade trade in res)
            {
                try
                {
                    var date   = trade.Date;
                    var value  = trade.Price;
                    var amount = trade.Amount;
                    market.CandleMaker.CandleBuilder(date, value, amount);
                    //CUtility.Log(string.Format("Candle {0} {1} ",date.ToString(CultureInfo.InvariantCulture),value.ToString(CultureInfo.InvariantCulture)));
                }
                catch (Exception ex)
                {
                    CUtility.Log(ex.Message);
                    //throw;
                }
            }
            CUtility.Log("start trading");
            //throw new NotImplementedException();
            return(true);
        }