the token CI is used to activate custom indicator . how the CI can be used so that it will pass parameters to the "called custom indicator"
Comments
Andrew Stoeckley
MarketDelta LLC
Answer
You cannot adjust CI parameters directly by calling the token, but the CI can reference user variables which are set separately. For example, add a button to your chart that controls a user variable, then code your token in the CI to reference this user variable; you can then adjust parameters in the CI without editing RTL.
July 29, 2012 19:28
Doron Harpaz
This does not solve the problem as the parameter passed using the user variable is fixed once for the system , but i want to activate the CI several times with different parameters.
July 30, 2012 00:49
Andrew Stoeckley
MarketDelta LLC
Answer
User variables are not fixed for the entire, system, only for that instrument. User variable V#5 for example can have different values for ES and YM so if your different charts are different instruments, this is the way to go, assign your parameters to user variables.
If your different charts are of the same symbol and will have the same CI, then you need to tweak the CI and save it under a different name, having two different CIs.
i updated V#60 via OP . the updated value does show in the note.
however the results of the CI were not updated
i compiled the CI and the results were updated.
in short , CI which uses user variable is not updated after user variable is updated unless it is recompiled or saved again.
so your suggestion is not effective.
July 30, 2012 04:36
Andrew Stoeckley
MarketDelta LLC
Answer
This is a very common solution and CI's update immediately with any changes in user variables. I added a Set button that lets you easily switch between V# numbers and your chart seems to work as expected:
Note that V# numbers do not retain historical values of the V# number, unlike something like OP which is specific to each bar and can change for each bar.
July 30, 2012 05:15
Doron Harpaz
indeed setting user variable via button works fine . however what i reported above is a bug and have to be fixed.
July 30, 2012 06:19
Doron Harpaz
i was too quick to confirm that it is ok . the fact is that if you update user variable in chart_A . it has full and immediate effect on chart_A . But not on chart_B which has the same indicator. if you close MD and reopen it - chart_B is fine too. so probably it is the same problem as with setting from OP i reported earlier.
July 30, 2012 06:30
Andrew Stoeckley
MarketDelta LLC
Answer
Other charts will only re-calculate all their CI values on the chart if you shift-click on their refresh button after you adjust a SET button on a different chart. They will however immediately use the new user variable for new calculations, right away.
The chart that contains the SET button however will automatically refresh all these values immediately.
July 31, 2012 08:28
Doron Harpaz
as far as i am concerned - this is bug and i suggest to fix it .
July 31, 2012 09:51
Andrew Stoeckley
MarketDelta LLC
This is by design to avoid very large recalculation times across many charts; many users have several charts opened, and if they all recalculate based on selecting one menu item, it would affect program performance. The shift-refresh recalc option exists to bypass this.
July 31, 2012 09:54
Doron Harpaz
the refresh should be done smart. to to all charts.
user variable was updated . find were it is used . refresh only chart in which it is used .
you do not expect the end user to remember were he is using each user variable .
July 31, 2012 10:02
Andrew Stoeckley
MarketDelta LLC
If you forget which user variables you are using, or want to check their usage, you can use Setup > Preferences > User Variables and click a variable and its usage report to see exactly where they are used.
July 31, 2012 10:06
Doron Harpaz
do not think you should expect end user to do this . software should do it automatically .
July 31, 2012 10:18
Andrew Stoeckley
MarketDelta LLC
We are adding a feature to the next version of the software to address your needs. It should be available soon, which will provide an option to force recalculation of user variables and custom indicators on all charts simultaneously
August 01, 2012 21:32
Doron Harpaz
i hope the recalculation is done only where it is needed. if i remember correctly problem of similar nature exist when CI_A activate CI_B. if CI_B is updated and compiled user have to recompile CI_A so that the changes made to CI_B will be in effect. this should be solved too.
August 01, 2012 23:55
Andrew Stoeckley
MarketDelta LLC
Answer
When the new features are released, you can provide your feedback. The developers did note that this is the first request we have had for these features in the many years that RTL has been available, so a detailed reworking of indicator recalc times is not likely. Check our downloads page periodically as I think the new features will be in the c6 release.
August 02, 2012 00:29
Andrew Stoeckley
MarketDelta LLC
Answer
Correction, the new features will be added in the next version, not 10.6.
Comments
You cannot adjust CI parameters directly by calling the token, but the CI can reference user variables which are set separately. For example, add a button to your chart that controls a user variable, then code your token in the CI to reference this user variable; you can then adjust parameters in the CI without editing RTL.
This does not solve the problem as the parameter passed using the user variable is fixed once for the system , but i want to activate the CI several times with different parameters.
User variables are not fixed for the entire, system, only for that instrument. User variable V#5 for example can have different values for ES and YM so if your different charts are different instruments, this is the way to go, assign your parameters to user variables.
If your different charts are of the same symbol and will have the same CI, then you need to tweak the CI and save it under a different name, having two different CIs.
i create a chart and a simple CI which calculate : VOL > V#60
http://www.charthub.com/images/2012/07/30/Untitled_33.png
in the chart i have a note with V#60 .
i updated V#60 via OP . the updated value does show in the note.
however the results of the CI were not updated
i compiled the CI and the results were updated.
in short , CI which uses user variable is not updated after user variable is updated unless it is recompiled or saved again.
so your suggestion is not effective.
This is a very common solution and CI's update immediately with any changes in user variables. I added a Set button that lets you easily switch between V# numbers and your chart seems to work as expected:
http://www.charthub.com/images/2012/07/30/Untitled_33_2.
Note that V# numbers do not retain historical values of the V# number, unlike something like OP which is specific to each bar and can change for each bar.
indeed setting user variable via button works fine . however what i reported above is a bug and have to be fixed.
i was too quick to confirm that it is ok .
the fact is that if you update user variable in chart_A . it has full and immediate effect on chart_A . But not on chart_B which has the same indicator. if you close MD and reopen it - chart_B is fine too.
so probably it is the same problem as with setting from OP i reported earlier.
Other charts will only re-calculate all their CI values on the chart if you shift-click on their refresh button after you adjust a SET button on a different chart. They will however immediately use the new user variable for new calculations, right away.
The chart that contains the SET button however will automatically refresh all these values immediately.
as far as i am concerned - this is bug and i suggest to fix it .
This is by design to avoid very large recalculation times across many charts; many users have several charts opened, and if they all recalculate based on selecting one menu item, it would affect program performance. The shift-refresh recalc option exists to bypass this.
the refresh should be done smart. to to all charts.
user variable was updated . find were it is used . refresh only chart in which it is used .
you do not expect the end user to remember were he is using each user variable .
If you forget which user variables you are using, or want to check their usage, you can use Setup > Preferences > User Variables and click a variable and its usage report to see exactly where they are used.
do not think you should expect end user to do this . software should do it automatically .
We are adding a feature to the next version of the software to address your needs. It should be available soon, which will provide an option to force recalculation of user variables and custom indicators on all charts simultaneously
i hope the recalculation is done only where it is needed.
if i remember correctly problem of similar nature exist when CI_A activate CI_B. if CI_B is updated and compiled user have to recompile CI_A so that the changes made to CI_B will be in effect. this should be solved too.
When the new features are released, you can provide your feedback. The developers did note that this is the first request we have had for these features in the many years that RTL has been available, so a detailed reworking of indicator recalc times is not likely. Check our downloads page periodically as I think the new features will be in the c6 release.
Correction, the new features will be added in the next version, not 10.6.