I have a custom MA column with 6 data series. I then have 25 or so Forex pairs added to the MA (i.e. each on a different row).
What I am trying to do, is to reference the name of the instrument/pair in Ninjascript which is for that row. However when I used "Instrument.FullName.ToString()" it is referencing the data series instrument name, not the MA row Instrument name.
Is anyone able to point me in the right direction to replacing "Instrument.FullName.ToString()" with something that will give me the name of the symbol for that MA row?
Cheers,
Shane
(Below is a sample which is not working):
namespace NinjaTrader.NinjaScript.MarketAnalyzerColumns
{
public class PIPtoUSD : MarketAnalyzerColumn
{
private double pipsize;
private double currencyvalue;
protected override void OnStateChange()
{
if (State == State.SetDefaults)
{
Description = @"Displays the pip movement amount in USD";
Name = "PIPtoUSD";
Calculate = Calculate.OnBarClose;
StandardLot = 100000;
StopSize = 10;
AccountBalance = 50000;
PercentRisk = 1;
}
else if (State == State.Configure)
{
AddDataSeries("AUDUSD", Data.BarsPeriodType.Minute, 1, Data.MarketDataType.Last);
AddDataSeries("EURUSD", Data.BarsPeriodType.Minute, 1, Data.MarketDataType.Last);
AddDataSeries("GBPUSD", Data.BarsPeriodType.Minute, 1, Data.MarketDataType.Last);
AddDataSeries("NZDUSD", Data.BarsPeriodType.Minute, 1, Data.MarketDataType.Last);
AddDataSeries("USDCAD", Data.BarsPeriodType.Minute, 1, Data.MarketDataType.Last);
AddDataSeries("USDCHF", Data.BarsPeriodType.Minute, 1, Data.MarketDataType.Last);
AddDataSeries("USDJPY", Data.BarsPeriodType.Minute, 1, Data.MarketDataType.Last);
}
}
protected override void OnMarketData(MarketDataEventArgs marketDataUpdate)
{
if(Instrument.FullName.ToString() == "EURUSD")
{
CurrentText = Instrument.FullName.ToString();
}
else
{
CurrentText = "";
}
}
Comment