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 algospoke, Yesterday, 06:40 PM
    2 responses
    20 views
    0 likes
    Last Post algospoke  
    Started by ghoul, Today, 06:02 PM
    3 responses
    14 views
    0 likes
    Last Post NinjaTrader_Manfred  
    Started by jeronymite, 04-12-2024, 04:26 PM
    3 responses
    45 views
    0 likes
    Last Post jeronymite  
    Started by Barry Milan, Yesterday, 10:35 PM
    7 responses
    21 views
    0 likes
    Last Post NinjaTrader_Manfred  
    Started by AttiM, 02-14-2024, 05:20 PM
    10 responses
    181 views
    0 likes
    Last Post jeronymite  
    Working...
    X