コード例 #1
0
        public void AsyncGetHistory(Asset asset, DateTime start, DateTime end, IProvisionContext provisionContext, Func <ISample, bool> func)
        {
            IDataSource source = new DukascopyDataSource();

            DukascopyOfflineReader.GetHistoricalPrices(
                provisionContext.Source,
                (Func <string, bool>)(line => {
                return(func(Quote.From3PartsString(line, asset, source)));
            }));
        }
コード例 #2
0
ファイル: UnitTest.cs プロジェクト: RomanS2N/trading
        public void TestMethod()
        {
            int samples = 0;

            DukascopyOfflineReader.GetHistoricalPrices(
                @"C:\hfdata\Temp\EURUSD_DUKAS_TICKS.txt",
                (Func <string, bool>)(line => {
                Console.WriteLine(line);
                Assert.IsNotNull(line);
                Assert.IsTrue(line.Length > 0);
                return(++samples < 5);
            }));
            Assert.AreEqual(5, samples);
        }
コード例 #3
0
        public ISamplePackage GetHistory(Asset asset, DateTime start, DateTime end, IProvisionContext provisionContext)
        {
            List <string> data = DukascopyOfflineReader.GetHistoricalPrices(provisionContext.Source);

            switch (provisionContext.SampleType)
            {
            case SampleType.Bar:
                // first line must be discarded (titles)
                data.RemoveAt(0);
                TimeSpan    period = provisionContext.Period;
                IDataSource source = new DukascopyDataSource();
                return(new BarPackage {
                    Asset = asset,
                    Source = source,
                    Period = period,
                    Samples = data.Select(line => (IBar)BuildBar(asset, source, period, line)).ToList()
                });

            case SampleType.Quote:
            default:
                throw new NotImplementedException();
            }
        }