![]() |
|
|||||||
| General Programming General NinjaScript programming questions. |
![]() |
|
|
Thread Tools | Display Modes |
|
|
#1 |
|
Member
Join Date: Sep 2007
Posts: 70
Thanks: 0
Thanked 0 times in 0 posts
|
If I replace the hard-coded SMA(Period) with Value.Set(SMA(Period)[0]); first, and then try to substitute the "Value" reference for the SMA(Period) condition for the coloring of the plots, it stops working. I've tried different combos, but nothing seems to work - it either ignores the color changes or plots nothing. My goal is to make the coloring code portion generic with the Values set for it above the conditions.
|
|
|
|
|
|
#2 |
|
NinjaTrader Customer Service
Join Date: Sep 2008
Location: Germany
Posts: 22,377
Thanks: 252
Thanked 966 times in 949 posts
|
Hi marketmasher, not sure what you are trying to achieve, can you please post the code you already have? You would still need 3 Plots for every color you wish to use and link to those to your dataseries objects (Values[0], Values[1], Values[2])
Bertrand
NinjaTrader Customer Service |
|
|
|
|
|
#3 | |
|
Member
Join Date: Sep 2007
Posts: 70
Thanks: 0
Thanked 0 times in 0 posts
|
Quote:
{ // Checks to make sure we have at least 1 bar before continuing if (CurrentBar < 1) return; Value.Set(SMA(Period)[0]); // Try to make this calc part interchangeable with another calc later... // Plot green if the SMA is rising // Rising() returns true when the current value is greater than the value of the previous bar. if (Rising(Value)) { // Connects the rising plot segment with the other plots RisingPlot.Set(1, Value[1]); // Adds the new rising plot line segment to the line RisingPlot.Set(Value[0]); } // Plot red if the SMA is falling // Falling() returns true when the current value is less than the value of the previous bar. else if (Falling(Value)) { // Connects the new falling plot segment with the rest of the line FallingPlot.Set(1, Value[1]); // Adds the new falling plot line segment to the line FallingPlot.Set(Value[0]); } // Plot yellow if the SMA is neutral else { // Connects the neutral plot segment with the rest of the line NeutralPlot.Set(1, Value[1]); // Adds the new neutral plot line segment to the line NeutralPlot.Set(Value[0]); } |
|
|
|
|
|
|
#4 |
|
NinjaTrader Product Manager
Join Date: May 2007
Location: Denver, CO
Posts: 17,458
Thanks: 1
Thanked 106 times in 70 posts
|
marketmasher,
Like Bertrand mentioned, you need three plots. Value[] only references the first plot or whichever plot is assigned to Values[0]. You need to make your own DataSeries to store your calculation. Your current code is likely trying to set RisingPlot.Set() and then take Value.Set(). They are referencing the same Values[0].
Josh
NinjaTrader Customer Service |
|
|
|
|
|
#5 |
|
NinjaTrader Customer Service
Join Date: Sep 2008
Location: Germany
Posts: 22,377
Thanks: 252
Thanked 966 times in 949 posts
|
Ok now I follow you, please check this zip - I guess it implements what you look for.
Bertrand
NinjaTrader Customer Service |
|
|
|
|
|
#6 |
|
Member
Join Date: Sep 2007
Posts: 70
Thanks: 0
Thanked 0 times in 0 posts
|
|
|
|
|
![]() |
| Thread Tools | |
| Display Modes | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| generic classes and functions | majkie | General Programming | 2 | 08-29-2008 07:17 PM |
| Generic class syntax checker problem | Rollins | General Programming | 1 | 06-11-2008 10:35 PM |
| Generic Indicator Overlay on price | monpere | Indicator Development | 9 | 04-17-2008 05:26 AM |
| SampleMultiColoredPlot.zip | Mike Winfrey | Indicator Development | 4 | 01-23-2008 08:58 AM |
| Using C#.Net 2.0 Generic Lists in NinjaScript | whitmark | Strategy Development | 1 | 10-08-2007 07:08 AM |