Trend Line Example
The following code is an example of create a trend line with the custom tool scripting.
//
// Sample script for Optuma tool scripting
//
// This section is where variable are defined that need to be used in both the Init and Process procedures
var
Line1 : TLine;
// DefineTool is where the settings for the Tool are defined
// This procedure is called once when the tool is loaded
// Normally this procedure does not need to be changed
procedure DefineTool(Tool : TTool);
begin
Tool.Name := 'My Trend Line';
Tool.Key := '210189E5-77AF-4616-B5A1-04829030C11E';
Tool.MouseClicks := 2;
Tool.Hint := '';
Tool.ToolType := ttDrawing;
end;
// Init is called to initialise the tool
// This procedure is called once when the tool is added to a chart
procedure Init(Tool : TTool);
begin
Line1 := Tool.AddLine();
Line1.Color := clRed;
Line1.Style := Solid; // Types of TLineStyle=(Solid, DotDot, Dash, DashDot, LongDash, LongDashDot, LongDashDotDot)
Line1.Width := 1;
end;
// Process is called to calculate and drawn the tool on screen
// This procedure is called when new data is received or loaded and
// when a selection point is moved by the user
procedure Process(Tool : TTool; ProcessStart : Integer; ProcessEnd : Integer; DataIn : TDataList);
begin
Line1.P1.Date := Tool.MP[0].Date;
Line1.P1.Price := Tool.MP[0].Price;
Line1.P2.Date := Tool.MP[1].Date;
Line1.P2.Price := Tool.MP[1].Price;
end;