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

Which Indicator is updating in my hosting indicator?

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

    Which Indicator is updating in my hosting indicator?

    I reviewed the docs about Multi-Time Frame & Instruments and a True Event Driven OnBarUpdate() Method like this:

    Code:
        if (BarsInProgress == 0)
        {
                  // Do something
        }
    
        if (BarsInProgress == 1)
        {
                  // Do something
        }
    My question is if there is a similar way for OnBarUpdate to know if a particular guest Indicator had an update. For example, suppose I have a Hosting Indicator with two different guest Indicators called GUEST1 and GUEST2. Could I do something similar to above like this:
    Code:
        public class WhichIndicatorCalls : Indicator
        {
            coolGuestIndicator GUEST1 = null;
            anotherCoolGuestIndicator GUEST2 = null;
            protected override void OnStateChange()
            {
                if (State == State.SetDefaults)
                {
                    Description                                    = @"Enter the description for your new custom Indicator here.";
                    Name                                        = "WhichIndicatorCalls";
                    Calculate                                    = Calculate.OnEachTick;
                }
                else if (State == State.DataLoaded)
                {
                    GUEST1 = coolGuestIndicator("foo");
                    GUEST2 = anotherCoolGuestIndicator("bar");
                }            
            }
            protected override void OnBarUpdate()
            {
                if (CurrentBar < 0)return;
    
                //Is there a way to listen for update events from GUEST1 or GUEST2?            
                if(GUEST1){
                    //do stuff here in the Hosting indicator for GUEST1
                }
                if(GUEST2){
                    //do stuff here in the Hosting indicator for GUEST2
                }            
            }
        }
    Or is there another event other than OnBarUpdate that I could use to specifically listen for events from particular guest indicators?

    #2
    Hi swcooke, thanks for your post.

    You can't listen for their OnBarUpdate to be called, but you can just call GUEST1.Update() and that will force the OnBarUpdate method for GUEST1 to be called.

    https://ninjatrader.com/support/help...t8/?update.htm - Update()

    Edit to extrapolate a bit more:
    If your script is Calculate.OnBarClose, the guest indicators will be called right before the host indicator OnBarUpdate is called. In the cased your host indicator is Calculate.OnEachTick, the Update method would be used to synchronize your guest indicators.

    Please let me know if you have any questions.
    Last edited by NinjaTrader_ChrisL; 02-28-2020, 09:27 AM.
    Chris L.NinjaTrader Customer Service

    Comment

    Latest Posts

    Collapse

    Topics Statistics Last Post
    Started by frslvr, 04-11-2024, 07:26 AM
    8 responses
    111 views
    1 like
    Last Post NinjaTrader_BrandonH  
    Started by stafe, 04-15-2024, 08:34 PM
    10 responses
    43 views
    0 likes
    Last Post stafe
    by stafe
     
    Started by rocketman7, Today, 09:41 AM
    3 responses
    8 views
    0 likes
    Last Post NinjaTrader_Jesse  
    Started by traderqz, Today, 09:44 AM
    2 responses
    5 views
    0 likes
    Last Post NinjaTrader_Gaby  
    Started by rocketman7, Today, 02:12 AM
    7 responses
    31 views
    0 likes
    Last Post NinjaTrader_ChelseaB  
    Working...
    X