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

SetTrailStop()

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

    SetTrailStop()

    SetTrailStop(CalculationMode.Percent, 0.50)

    What does the above statement do?

    I think it tracks the amount of unrealized profit and if it falls to <= 50% of the total a stop order is issued?

    Is that correct?

    #2
    Hello rcsingleton,

    Thanks for your post.

    CalculationMode.Percent represents Percentage away from the average entry, based on the average entry price.

    This will have NinjaTrader submit a stop loss that trails behind the current market price by 50% of the average entry price.

    This could be tested easily by setting up a strategy that skips historical processing and immediately enters a position. For example:
    Code:
    protected override void OnStateChange()
    {
    	if (State == State.SetDefaults)
    	{
    		...
    	}
    	else if (State == State.Configure)
    	{
    		SetTrailStop(CalculationMode.Percent, .5);
    	}
    }
    
    protected override void OnBarUpdate()
    {
    	if(State == State.Historical)
    		return;
    	if(Position.MarketPosition == MarketPosition.Flat)
    		EnterLong();
    }
    As another tip, you may reference the information from the help guide and then observe the order updates for "Trail stop" in by adding prints in OnOrnderUpdate. These prints will be visible in the NinjaScript Output window.
    Code:
    protected override void OnOrderUpdate(Cbi.Order order, double limitPrice, double stopPrice, 
    	int quantity, int filled, double averageFillPrice, 
    	Cbi.OrderState orderState, DateTime time, Cbi.ErrorCode error, string comment)
    {
    	if(order.Name == "Trail stop")
    		Print(stopPrice + " " + Close[0] + " " + (stopPrice/Close[0]));
    }
    Further tips, advisories and notes on usage are listed in the SetTrailStop() page of the help guide.

    SetTrailStop() - https://ninjatrader.com/support/help...ttrailstop.htm

    OnOrderUpdate() - https://ninjatrader.com/support/help...rderupdate.htm

    Please let us know if you have any additional questions.
    JimNinjaTrader Customer Service

    Comment

    Latest Posts

    Collapse

    Topics Statistics Last Post
    Started by Waxavi, Today, 02:10 AM
    1 response
    17 views
    0 likes
    Last Post NinjaTrader_LuisH  
    Started by Kaledus, Today, 01:29 PM
    5 responses
    13 views
    0 likes
    Last Post NinjaTrader_Jesse  
    Started by Waxavi, Today, 02:00 AM
    1 response
    12 views
    0 likes
    Last Post NinjaTrader_LuisH  
    Started by alifarahani, Today, 09:40 AM
    5 responses
    23 views
    0 likes
    Last Post NinjaTrader_Jesse  
    Started by gentlebenthebear, Today, 01:30 AM
    3 responses
    17 views
    0 likes
    Last Post NinjaTrader_Jesse  
    Working...
    X