Announcement
Collapse
Looking for a User App or Add-On built by the NinjaTrader community?
Visit NinjaTrader EcoSystem and our free User App Share!
Have a question for the NinjaScript developer community? Open a new thread in our NinjaScript File Sharing Discussion Forum!
Have a question for the NinjaScript developer community? Open a new thread in our NinjaScript File Sharing Discussion Forum!
See more
See less
Partner 728x90
Collapse
NinjaTrader
Making SampleMultiColoredPlot Generic
Collapse
X
-
Making SampleMultiColoredPlot Generic
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.Tags: None
-
Originally posted by NinjaTrader_Bertrand View PostHi 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])
{
// 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]);
}
Comment
-
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 P.NinjaTrader Customer Service
Comment
-
Latest Posts
Collapse
Topics | Statistics | Last Post | ||
---|---|---|---|---|
Started by tkaboris, Today, 08:32 AM
|
5 responses
8 views
0 likes
|
Last Post Today, 10:04 AM | ||
Started by f.saeidi, Today, 07:07 AM
|
3 responses
9 views
0 likes
|
Last Post Today, 10:02 AM | ||
Started by Philippe56140, 04-27-2024, 02:35 PM
|
9 responses
72 views
0 likes
|
Last Post Today, 09:53 AM | ||
Started by algospoke, Yesterday, 06:36 PM
|
3 responses
15 views
0 likes
|
Last Post Today, 09:51 AM | ||
Started by sugalt, 04-30-2024, 04:02 AM
|
4 responses
17 views
0 likes
|
Last Post Today, 09:48 AM |
Comment