From 3e0628ad57fb623c69413f6d26e8c784740b7c5f Mon Sep 17 00:00:00 2001 From: Michael Schimmel Date: Tue, 15 Jul 2025 02:11:13 +0200 Subject: [PATCH] Polished DataProvider & Converter, RTTI field access --- AuraTrader/MainForm.pas | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/AuraTrader/MainForm.pas b/AuraTrader/MainForm.pas index 316dc64..c451cf5 100644 --- a/AuraTrader/MainForm.pas +++ b/AuraTrader/MainForm.pas @@ -331,7 +331,7 @@ begin ///// - var timeframe := TTimeframe.H4; + var timeframe := TTimeframe.M15; var ticker := TConverter.CreateTicker>; @@ -346,11 +346,9 @@ begin var OhlcPoint := lastPrice.Chain>(TTickAggregation.Create(timeframe)); - var Timestamps := OhlcPoint.Chain(function(const Ohlc: TDataPoint): TDateTime begin Result := Ohlc.Time; end); - - var Ohlc := OhlcPoint.Chain(function(const Ohlc: TDataPoint): TOhlcItem begin Result := Ohlc.Data; end); - - var Closes := Ohlc.Chain(function(const Ohlc: TOhlcItem): Double begin Result := Ohlc.Close; end); + var Timestamps := OhlcPoint.Field('Time'); + var Ohlc := OhlcPoint.Field('Data'); + var Closes := Ohlc.Field('Close'); var Hull := Closes.Chain(TIndicators.CreateHMA(150)); var Sma := Closes.Chain(TIndicators.CreateSMA(50)); @@ -384,7 +382,7 @@ begin Panel.AddDoubleSeries(Stoch.Field('D').Sender, TAlphaColors.Red); ///// - + { var tickChart := TMycChart.Create(Self); tickChart.Height := Layout.ChildrenRect.Width * 9 / 16; AlignControl(tickChart); @@ -398,7 +396,7 @@ begin var TickSpread := TickData.Chain(function(const Tick: TAskBidItem): Double begin Result := Tick.Bid - Tick.Ask; end); - { tickChart.SetXAxisSeries(TTimeframe.S, TickTime.Sender); + tickChart.SetXAxisSeries(TTimeframe.S, TickTime.Sender); panel := tickChart.AddPanel; panel.AddDoubleSeries(TickAsk.Sender, TAlphaColors.Blue); panel.AddDoubleSeries(TickBid.Sender, TAlphaColors.Red);