San Francisco, California
Posts: 2 since Oct 2022
Thanks Given: 0
Thanks Received: 0
|
Hello! I'm just starting to try out using objects, and my first test is to use PriceSeriesProvider. I've created the following code, and it verifies ok, but when I put it on a chart, I get the error:
Data in the 'Provider' can not be accessed until the object is 'loaded'.
Anyone know what that means?
using elsystem;
Using tsdata.marketdata;
var: PriceSeriesProvider PSP(NULL),
Intrabarpersist TimeLast(0),
Intrabarpersist Xav3(0),
Xav3Last(0);
Once
begin
PSP = new PriceSeriesProvider;
//---------------------------
//psp
//---------------------------
PSP.Symbol = Symbol;
PSP.Interval.ChartType = DataChartType.Bars;
PSP.Interval.IntervalType = DataIntervalType.Minutes;
PSP.Interval.IntervalSpan = 30;
PSP.Interval.Name = "(Unknown name)";
PSP.Range.Type = DataRangeType.Bars;
PSP.Range.FirstDate = DateTime.FromELDateAndTime(D,T);
PSP.Range.Name = "(Unknown name)";
PSP.IncludeVolumeInfo = false;
PSP.IncludeTicksInfo = false;
PSP.UseNaturalHours = false;
PSP.Realtime = true;
PSP.TimeZone = tsdata.common.TimeZone.exchange;
PSP.Name = "PSP";
PSP.Load = false;
end;
If PSP.Time[0].ELTime <> TimeLast Then
Begin
if psp.count > 2 then Xav3 = Xav3Last + (2/15 * (PSP.Close[0] - Xav3Last));
Xav3Last = Xav3;
TimeLast = PSP.Time[0].ELTime;
end;
Plot3(Xav3, "XAv3", Cyan);
If GetAppInfo(aiRealTimeCalc) = 1 then Setplotcolor(3,Yellow);
|