Rectangle Shape's price 2 data is equal to price 1 data in FT3
Posted: Thu Dec 15, 2016 8:17 pm
Hi everyone. Please help me.
I need rectangle shape's price data for my own indicator in FT3.
But I can't get rectangle shape's price 2 data.
It is equal to price 1 data.
The behavior of the problem appears both delphi and c++.
Program in delphi is as below
***********************************************************************************
library RecDataD;
uses
SysUtils, classes, graphics, windows, IndicatorInterfaceUnit;
var
// External variables
// Buffers
EMP: TIndexBuffer;
//---------------------------------------------------------------------------
// Initialize indicator
//---------------------------------------------------------------------------
procedure Init; stdcall;
begin
// define properties
IndicatorShortName('RecDataD');
SetOutputWindow(ow_ChartWindow);
// register options
AddSeparator('Common');
// create buffers
EMP := CreateIndexBuffer;
IndicatorBuffers(1);
SetIndexBuffer(0, EMP);
SetIndexStyle(0, ds_None, psSolid, 1, RGB($1E, $90, $FF));
SetIndexLabel(0, 'EMP');
end;
//---------------------------------------------------------------------------
// Deinitialize indicator
//---------------------------------------------------------------------------
procedure Done; stdcall;
begin
end;
//---------------------------------------------------------------------------
// Calculate requested bar
//---------------------------------------------------------------------------
procedure Calculate(index: integer); stdcall;
var
i, obj_total: integer;
pr1, pr2: double;
strObjName: string;
begin
EMP[index] := 0;
obj_total := ObjectsTotal;
for i:=0 to obj_total do begin
strObjName := ObjectName(i);
Print(strObjName);
if Pos('Rectangle',strObjName) <> 0 then
begin
pr1 := ObjectGet(strObjName, OBJPROP_PRICE1);
pr2 := ObjectGet(strObjName, OBJPROP_PRICE2);
Print(FloatToStr(pr1));
Print(FloatToStr(pr2));
end;
end;
end;
exports
Init, Done, Calculate;
end.
I need rectangle shape's price data for my own indicator in FT3.
But I can't get rectangle shape's price 2 data.
It is equal to price 1 data.
The behavior of the problem appears both delphi and c++.
Program in delphi is as below
***********************************************************************************
library RecDataD;
uses
SysUtils, classes, graphics, windows, IndicatorInterfaceUnit;
var
// External variables
// Buffers
EMP: TIndexBuffer;
//---------------------------------------------------------------------------
// Initialize indicator
//---------------------------------------------------------------------------
procedure Init; stdcall;
begin
// define properties
IndicatorShortName('RecDataD');
SetOutputWindow(ow_ChartWindow);
// register options
AddSeparator('Common');
// create buffers
EMP := CreateIndexBuffer;
IndicatorBuffers(1);
SetIndexBuffer(0, EMP);
SetIndexStyle(0, ds_None, psSolid, 1, RGB($1E, $90, $FF));
SetIndexLabel(0, 'EMP');
end;
//---------------------------------------------------------------------------
// Deinitialize indicator
//---------------------------------------------------------------------------
procedure Done; stdcall;
begin
end;
//---------------------------------------------------------------------------
// Calculate requested bar
//---------------------------------------------------------------------------
procedure Calculate(index: integer); stdcall;
var
i, obj_total: integer;
pr1, pr2: double;
strObjName: string;
begin
EMP[index] := 0;
obj_total := ObjectsTotal;
for i:=0 to obj_total do begin
strObjName := ObjectName(i);
Print(strObjName);
if Pos('Rectangle',strObjName) <> 0 then
begin
pr1 := ObjectGet(strObjName, OBJPROP_PRICE1);
pr2 := ObjectGet(strObjName, OBJPROP_PRICE2);
Print(FloatToStr(pr1));
Print(FloatToStr(pr2));
end;
end;
end;
exports
Init, Done, Calculate;
end.