Sets variable value to a global storage
SYNTAX
public static void SetValue (string name,object value,VariableLifetime lifetime)
PARAMETERS
name — string
Variable name
value — object
New value
lifetime — VariableLifetime
Variable lifetime
RETURN
void
EXAMPLE
using System; using System.Text; using PTLRuntime.NETScript; namespace GlobalVariablesManager { public class GlobalVariablesManager : NETIndicator { GlobalVariablesManager(){ base.ProjectName = "GlobalVariablesManager"; base.Password=GetHashedPassword(ProjectName); } [InputParameter("Period", 0, 1, 9999)] public int period = 5; public override void OnQuote() { //Simplified way to store a global variable GlobalVariablesManager.SetValue("global_variable_period", period, VariableLifetime.SaveSession); //However, to indicate any variable belongs to certain indicator/strategy and to avoid unexpected erasing of data the best practice is to provide to a key holder multiple details such as name, params, hashed password etc. GlobalVariablesManager.SetValue("global_variable_period" +Instruments.Current.Name+period+Password, period, VariableLifetime.SaveSession); } } }