Directly changing a parameter’s value during a test using a different value will not work.  It is prevented because the built-in indicators are calculated prior to the start of testing.  If the value of a parameter were changed, the values in the  indicator would not be accurate because the value change is not the value used to calculate the indicator.  

 

Custom indicators (IPV Series that are computed in the Update Indicators script) are dynamic and can use a BPV and be updated during the test. This is often used to modify channel width as an example depending on number of winning or losing trades. This method could certainly be used to update the parameter (BPV) values from one test to the next.

 

However, indicators are recomputed between test runs for a multi stepped test.  This means that a parameter value change could be used in a multi-step test.  For a multi-step test, consider changing the parameter value in the After Test script section so the indicators can be updated for the next step.  

 

This idea has not been tested with test that have more than one thread.  If you consider doing this change, test the idea first with the Thread setting set to 1.  If a single thread worked as you expected, it might be possible to use test.threadCount property to select values for each new step in a multi-step test.

 

For example, typically the number of stepped tests is determined in advance by the number of stepping parameters.  However, in this special case it might be possible to create stepping loop that could continue indefinitely until the parameters stop changing.  Something to think about.

 

Example BPV Assignment Idea:

'  In TB v3.x this top section shows a process that could change
'  the user's rate of allocation so that is doesn't make an error.
'  ==============================================================
'  Parameter Value BPV Update
'  BEFORE TEST SCRIPT  -  START
'  ==============================================================
'  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
'  This parameter value: AcctAdjustRate
'  Is a Percentage Parameter field used in calculating
'  the rate of equity allocation in a system.
'  --------------------------------------------------------------
'  Limit Max Rate Adjustments to 100%
If AcctAdjustRate > 1 THEN AcctAdjustRate = 1
 
'  Limit Min Rate Adjustments to 0%
If AcctAdjustRate < 0 THEN AcctAdjustRate = 0
 
'  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
'  In TB-v5, this new section shows the same ability to control a
'  user's error by substituting a BPV Float that could be changed.
'  While a float variable will show the % as a decimal, it will do what we
'  were doing previously.  In this case, the parameter isn't used
'  in scripting, but the BPV is used where the need to adjust the
'  current allocation is needed.
'  ==============================================================
'  BEFORE TEST SCRIPT  -  END
'  Parameter Value BPV Update
'  ==============================================================

 

 

'  This brief section was created to manage the same processes

'  in a group of systems using the GSS process to update the

'  same BPV_Variables to set the BPV-Variables in the systems.

'  The Before Test Script in a multi-system using GSS Blox

'  will update all the systems before testing starts.

'

'  ==============================================================

'  GSS Rank Adj Sizing Control

'  BEFORE TEST SCRIPT  -  START

'  ==============================================================

'  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

'  GSS Module ID

iGSS_ID578 = 578

'  System Index Numbers to Control

sGSS_ID578Systems = Trim(sSystemNumbers)

'  --------------------------------------------------------------

'  Only Assign Values when System Numbers are Assigned

If Len(sGSS_ID578Systems) > 0 THEN

  '  GSS Rate Adjustment State

  iGSS_iRankAdjSizingON = iRankAdjSizingON

  '  mm: H-Factor Percentile Adjust Rate:

  GSS_H_Factor = H_Factor

  '  TSP Raw or Abs Application State

  iGSS_RawScoreRankSort = iApplyABS2TSP

ENDIF '  Len(sSystemsControlled) > 0

'  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

'  ==============================================================

'  BEFORE TEST SCRIPT  -  END

'  GSS Rank Adj Sizing Control

'  ==============================================================

 

 

Links:

Parameters, Parameter Control, Parameter Stepping, Parameter Stepping Priority,

See Also:

 

 


Edit Time: 6/13/2020 4:18:34 PM


Topic ID#: 699

 

Created with Help & Manual 7 and styled with Premium Pack Version 2.80 © by EC Software