Пример #1
0
        public MainWindow()
        {
            InitializeComponent();
            if (LicenseManager.UsageMode == LicenseUsageMode.Designtime)
            {
                return;
            }

            //Load data.
            var json  = File.ReadAllText("testdata.json");
            var chart = JsonConvert.DeserializeObject <TradingViewChart>(json);
            var ctx   = new TradingViewContext()
            {
                Title = "MyTitle",
                Chart = chart
            };
            var lastCandle = chart.Ohlcv.Last();

            _currentOhlcvTime = (long)lastCandle.DateTime.ToUniversalDateTime();
            var prevCandleTime = (long)chart.Ohlcv[chart.Ohlcv.Count - 2].DateTime.ToUniversalDateTime();

            _step = _currentOhlcvTime - prevCandleTime;
            var o = JsonConvert.SerializeObject(lastCandle.Open);
            var h = JsonConvert.SerializeObject(lastCandle.High);
            var l = JsonConvert.SerializeObject(lastCandle.Low);
            var c = JsonConvert.SerializeObject(lastCandle.Close);
            var v = JsonConvert.SerializeObject(lastCandle.Volume);

            TextBox1.Text            = $"[{o}, {h}, {l}, {c}, {v}]";
            TradingView              = TradingViewCtr.TradingView;
            TradingView.TypedContext = ctx;
        }
        public MainForm()
        {
            InitializeComponent();

            if (LicenseManager.UsageMode == LicenseUsageMode.Designtime)
            {
                return;
            }
            //Load data.
            var json       = File.ReadAllText("testdata.json");
            var chart      = JsonConvert.DeserializeObject <TradingViewChart>(json);
            var lastCandle = chart.Ohlcv.Last();

            //Add trade marker.
            var tradeOverlayItem = new TradeOverlayItem()
            {
                DateTime = lastCandle.DateTime,
                Price    = lastCandle.Close,
                Type     = TradeMarkerType.Sell,
                Label    = "My trade"
            };
            var tradesChartOverlay = new ChartOverlay()
            {
                Name = "Maked trades",
                Type = "Trades",
                Data = new List <object>
                {
                    tradeOverlayItem
                },
                Settings = new Dictionary <string, object>()
            };

            tradesChartOverlay.Settings["z-index"] = 1;
            chart.OnChart.Add(tradesChartOverlay);

            var ctx = new TradingViewContext()
            {
                Title = "MyTitle",
                Chart = chart
            };
            var tv = tradingViewControl1.TradingView;

            tv.TypedContext      = ctx;
            tv.TimeRangeChanged += async(s, e) =>
            {
                Debug.WriteLine($"StartTime: {e.StartTime}, EndTime: {e.EndTime}");
            };
            Task.Run(async() =>
            {
                await Task.Delay(3000);
                Debug.WriteLine(JsonConvert.SerializeObject(await tv.GetTimeRange()));
            });
        }