Can someone help me make the following Tradestation Function in esignal EFS?
*************BEGIN CODE**************************
{{ Single-return wrapper function calling
multiple-output function; see MULTIPLE-OUTPUT
FUNCTIONS note below }
inputs: Length( numericsimple ), TgtBar( numericsimple
) ;
variables: oLRSlope( 0 ), oLRAngle( 0 ), oLRIntercept(
0 ), oLRValue( 0 ) ;
Value1 = LinearReg( C, Length, TgtBar, oLRSlope,
oLRAngle, oLRIntercept, oLRValue ) ;
TimeSeriesForecast = oLRValue ;
{
MULTIPLE-OUTPUT FUNCTIONS
A multiple-output function has two types of parameters
or "inputs" - input parameters
and input/output parameters. The values of the input
parameters are passed into the
multiple-output function, but not modified by the
function. The values of the input/
output parameters are passed into the multiple-output
function, modified by it, and
the modified values are then inherited by - or output
to - the calling routine.
The input/output parameters are often used for output
purposes only, i.e., the
incoming values are ignored. The outputs are in
addition to the function return. In
multiple-output functions, the function return is
generally used to return an error
code, though sometimes the return may simply be a
dummy value.
The input/output parameters are declared with a "ref"
suffix (such as "numericref") in
the multiple-output function's declaration statements.
For further clarity, the names
of the input/output parameters are generally prefixed
with an "o" in the function as
well as in all the routines that call the function.
The built-in single-return WRAPPER FUNCTIONS that call
the multiple-output functions
are specialized calling routines designed to offer
simplified, alternate pathways to
the functionality of the underlying multiple-output
functions. In the wrapper
functions, the input/output parameters are declared as
local variables and generally
initialized to zero. They are passed through to the
multiple-output function without
further modification. After the call, the wrapper
function picks out the single
output of interest and assigns it as the return of the
wrapper function.
}
*******************END CODE **********************
++++++++++++++++BEGIN 2nd CODE++++++++++++++++
Linear Regression is a concept also known as the
"least squares method" or "best fit." Linear
Regression attempts to fit a straight line between
several data points in such a way that distance
between each data point and the line is minimized.
This function calculates the slope and angle of a
linear regression line, and also determines the value
of the line on the current bar or a specified number
of bars ago or projected bars into the future.
Function
LinearReg(Price, Length, TgtBar, oLRSlope, oLRAngle,
oLRIntercept, oLRValue)
Parameters
Price
Specifies the value of interest is to be used.
Length
Specifies the number of bars to consider in the
regression calculation.
TgtBar
Represents the number of bars into the future or back
into the past, zero for the current bar.
OLRSlope
Variable that receives the slope of the linear
regression line.
oLRAngle
Variable that receives the angle of the linear
regression line in terms of degrees.
oLRIntercept
Variable that receives the regression value for x
number of bars out into the future or x number of bars
back in the past.
oLRValue
Variable that receives the regression value for x
number of bars out into the future or x number of bars
back in the past.
Returns
LinearReg always returns 1. It calculates the linear
regression line and passes the slope, angle, intercept
and associated value by reference back to the calling
function or technique.
Usage
The equation of any line resembles the following:
y = mx + b
In the equation m refers to the slope of the
regression line, b refers to the constant intercept of
the y-axis, x is the independent variable, and y is
the dependent variable. This function returns all
values.
The input Price can be hard coded with a bar attribute
such as Close, Open, High, Low, and Volume or a
numeric series type input. It can also be replaced
with a valid EasyLanguage expression. For example:
Close + Open, or Average(RSI(Close,14),14).
The inputs Length and TgtBar can be hard coded
replaced with numeric simple type inputs.
++++++++++++++++END 2nd CODE++++++++++++++++
{ Single-return wrapper function calling
multiple-output function; see MULTIPLE-OUTPUT
FUNCTIONS note below }
inputs: Length( numericsimple ), TgtBar( numericsimple
) ;
variables: oLRSlope( 0 ), oLRAngle( 0 ), oLRIntercept(
0 ), oLRValue( 0 ) ;
Value1 = LinearReg( C, Length, TgtBar, oLRSlope,
oLRAngle, oLRIntercept, oLRValue ) ;
TimeSeriesForecast = oLRValue ;
{
MULTIPLE-OUTPUT FUNCTIONS
A multiple-output function has two types of parameters
or "inputs" - input parameters
and input/output parameters. The values of the input
parameters are passed into the
multiple-output function, but not modified by the
function. The values of the input/
output parameters are passed into the multiple-output
function, modified by it, and
the modified values are then inherited by - or output
to - the calling routine.
The input/output parameters are often used for output
purposes only, i.e., the
incoming values are ignored. The outputs are in
addition to the function return. In
multiple-output functions, the function return is
generally used to return an error
code, though sometimes the return may simply be a
dummy value.
The input/output parameters are declared with a "ref"
suffix (such as "numericref") in
the multiple-output function's declaration statements.
For further clarity, the names
of the input/output parameters are generally prefixed
with an "o" in the function as
well as in all the routines that call the function.
The built-in single-return WRAPPER FUNCTIONS that call
the multiple-output functions
are specialized calling routines designed to offer
simplified, alternate pathways to
the functionality of the underlying multiple-output
functions. In the wrapper
functions, the input/output parameters are declared as
local variables and generally
initialized to zero. They are passed through to the
multiple-output function without
further modification. After the call, the wrapper
function picks out the single
output of interest and assigns it as the return of the
wrapper function.
}
*************BEGIN CODE**************************
{{ Single-return wrapper function calling
multiple-output function; see MULTIPLE-OUTPUT
FUNCTIONS note below }
inputs: Length( numericsimple ), TgtBar( numericsimple
) ;
variables: oLRSlope( 0 ), oLRAngle( 0 ), oLRIntercept(
0 ), oLRValue( 0 ) ;
Value1 = LinearReg( C, Length, TgtBar, oLRSlope,
oLRAngle, oLRIntercept, oLRValue ) ;
TimeSeriesForecast = oLRValue ;
{
MULTIPLE-OUTPUT FUNCTIONS
A multiple-output function has two types of parameters
or "inputs" - input parameters
and input/output parameters. The values of the input
parameters are passed into the
multiple-output function, but not modified by the
function. The values of the input/
output parameters are passed into the multiple-output
function, modified by it, and
the modified values are then inherited by - or output
to - the calling routine.
The input/output parameters are often used for output
purposes only, i.e., the
incoming values are ignored. The outputs are in
addition to the function return. In
multiple-output functions, the function return is
generally used to return an error
code, though sometimes the return may simply be a
dummy value.
The input/output parameters are declared with a "ref"
suffix (such as "numericref") in
the multiple-output function's declaration statements.
For further clarity, the names
of the input/output parameters are generally prefixed
with an "o" in the function as
well as in all the routines that call the function.
The built-in single-return WRAPPER FUNCTIONS that call
the multiple-output functions
are specialized calling routines designed to offer
simplified, alternate pathways to
the functionality of the underlying multiple-output
functions. In the wrapper
functions, the input/output parameters are declared as
local variables and generally
initialized to zero. They are passed through to the
multiple-output function without
further modification. After the call, the wrapper
function picks out the single
output of interest and assigns it as the return of the
wrapper function.
}
*******************END CODE **********************
++++++++++++++++BEGIN 2nd CODE++++++++++++++++
Linear Regression is a concept also known as the
"least squares method" or "best fit." Linear
Regression attempts to fit a straight line between
several data points in such a way that distance
between each data point and the line is minimized.
This function calculates the slope and angle of a
linear regression line, and also determines the value
of the line on the current bar or a specified number
of bars ago or projected bars into the future.
Function
LinearReg(Price, Length, TgtBar, oLRSlope, oLRAngle,
oLRIntercept, oLRValue)
Parameters
Price
Specifies the value of interest is to be used.
Length
Specifies the number of bars to consider in the
regression calculation.
TgtBar
Represents the number of bars into the future or back
into the past, zero for the current bar.
OLRSlope
Variable that receives the slope of the linear
regression line.
oLRAngle
Variable that receives the angle of the linear
regression line in terms of degrees.
oLRIntercept
Variable that receives the regression value for x
number of bars out into the future or x number of bars
back in the past.
oLRValue
Variable that receives the regression value for x
number of bars out into the future or x number of bars
back in the past.
Returns
LinearReg always returns 1. It calculates the linear
regression line and passes the slope, angle, intercept
and associated value by reference back to the calling
function or technique.
Usage
The equation of any line resembles the following:
y = mx + b
In the equation m refers to the slope of the
regression line, b refers to the constant intercept of
the y-axis, x is the independent variable, and y is
the dependent variable. This function returns all
values.
The input Price can be hard coded with a bar attribute
such as Close, Open, High, Low, and Volume or a
numeric series type input. It can also be replaced
with a valid EasyLanguage expression. For example:
Close + Open, or Average(RSI(Close,14),14).
The inputs Length and TgtBar can be hard coded
replaced with numeric simple type inputs.
++++++++++++++++END 2nd CODE++++++++++++++++
{ Single-return wrapper function calling
multiple-output function; see MULTIPLE-OUTPUT
FUNCTIONS note below }
inputs: Length( numericsimple ), TgtBar( numericsimple
) ;
variables: oLRSlope( 0 ), oLRAngle( 0 ), oLRIntercept(
0 ), oLRValue( 0 ) ;
Value1 = LinearReg( C, Length, TgtBar, oLRSlope,
oLRAngle, oLRIntercept, oLRValue ) ;
TimeSeriesForecast = oLRValue ;
{
MULTIPLE-OUTPUT FUNCTIONS
A multiple-output function has two types of parameters
or "inputs" - input parameters
and input/output parameters. The values of the input
parameters are passed into the
multiple-output function, but not modified by the
function. The values of the input/
output parameters are passed into the multiple-output
function, modified by it, and
the modified values are then inherited by - or output
to - the calling routine.
The input/output parameters are often used for output
purposes only, i.e., the
incoming values are ignored. The outputs are in
addition to the function return. In
multiple-output functions, the function return is
generally used to return an error
code, though sometimes the return may simply be a
dummy value.
The input/output parameters are declared with a "ref"
suffix (such as "numericref") in
the multiple-output function's declaration statements.
For further clarity, the names
of the input/output parameters are generally prefixed
with an "o" in the function as
well as in all the routines that call the function.
The built-in single-return WRAPPER FUNCTIONS that call
the multiple-output functions
are specialized calling routines designed to offer
simplified, alternate pathways to
the functionality of the underlying multiple-output
functions. In the wrapper
functions, the input/output parameters are declared as
local variables and generally
initialized to zero. They are passed through to the
multiple-output function without
further modification. After the call, the wrapper
function picks out the single
output of interest and assigns it as the return of the
wrapper function.
}
Code:
dd
Comment