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!
See more
See less

Partner 728x90

Collapse

StreamWritter in MultiTime Frame indicator

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    StreamWritter in MultiTime Frame indicator

    Hi,

    I have downloaded a sample indicator for streamwriter in NT7 and wanted to use it in a multi time frame manner.
    Here below the code. Its doesnt work at all when adding a PeriodeType. Any idea why???

    Code:
            protected override void Initialize()
            {
                CalculateOnBarClose    = true;
                Add(PeriodType.Day, 1);    
            }
    
            protected override void OnBarUpdate()
            {
                if (BarsInProgress != 0)
                return;
    
                double AtrZero;
                if(ATR(1).Value.ContainsValue(0)) // checks whether the DataSeries contains a value
                        AtrZero = Math.Round(ATR(1).Value.Get(CurrentBar),2);
                   else
                        AtrZero = 0.0;
    
                double AtrDay;
                if(ATR(BarsArray[1],1).Value.ContainsValue(0))
                        AtrDay = Math.Round(ATR(BarsArray[1],1).Value.Get(CurrentBar),2);
                   else
                    AtrDay = 0.0;
    
    
                try
                {
                    if (CurrentBar == 0)
                        sw = File.AppendText(path);
    
                        sw.WriteLine(Time[0]+ " " + Time[0].DayOfWeek.ToString() + " " + AtrZero+ " " + AtrDay);
                }
    
                catch (Exception e)
                {
                    Log("You cannot write and read from the same file at the same time. Please remove SampleStreamReader.", NinjaTrader.Cbi.LogLevel.Error);
                    throw;
                }
            }
            protected override void OnTermination()
            {
                if (sw != null)
                {
                    sw.Dispose();
                    sw = null;
                }
            }
    0
    ?
    0%
    0
    ?
    0%
    0

    #2
    Hello cbadr,

    Are you getting an error when running the script in the Log tab of the Control Center?

    You may need a CurrentBars check for each series to have at least 1 bar.

    Chelsea B.NinjaTrader Customer Service

    Comment


      #3
      Thanks for the quick answer.
      I ve found the problem. It appears that i have declared private variables that weren't used in the OnBarUpdate(). I removed them and now all works fine.

      Comment

      Latest Posts

      Collapse

      Topics Statistics Last Post
      Started by gentlebenthebear, Today, 01:30 AM
      2 responses
      13 views
      0 likes
      Last Post gentlebenthebear  
      Started by Kaledus, Today, 01:29 PM
      2 responses
      7 views
      0 likes
      Last Post Kaledus
      by Kaledus
       
      Started by frankthearm, Yesterday, 09:08 AM
      13 responses
      45 views
      0 likes
      Last Post frankthearm  
      Started by PaulMohn, Today, 12:36 PM
      2 responses
      16 views
      0 likes
      Last Post PaulMohn  
      Started by Conceptzx, 10-11-2022, 06:38 AM
      2 responses
      56 views
      0 likes
      Last Post PhillT
      by PhillT
       
      Working...
      X