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

How do I get the profit of the last trade?

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

    How do I get the profit of the last trade?

    PositionProfit(0) ?? I'm trying to get the profit of the last closed position for the day and if it was a loss stop trading for the day. This is how I do it in Easy language

    The logic is sound and works just not sure how to get the last closed position profit?

    {Stop Trading for the day}
    if PositionProfit(0) < 0

    then MCL = MCL+1;

    if date<>date[1]
    then MCL = 0;

    Thank You for your help!

    RM​

    #2
    Code:
    if (SystemPerformance.AllTrades.Count > 0)
    {
        Trade lastTrade = SystemPerformance.AllTrades[SystemPerformance.AllTrades.Count - 1];
        double lastProfitCurrency = lastTrade.ProfitCurrency;
    }
    See also: https://ninjatrader.com/support/help.../nt8/trade.htm
    Bruce DeVault
    QuantKey Trading Vendor Services
    NinjaTrader Ecosystem Vendor - QuantKey

    Comment


      #3
      Thank you, here is my code but I'm getting an error lastProfitCurrency does not exsts, Does the line double lastProfitCurrency = lastTrade.ProfitCurrency; define the variable? What am I'm doing wrong?

      if (SystemPerformance.AllTrades.Count > 0)
      {
      Trade lastTrade = SystemPerformance.AllTrades[SystemPerformance.AllTrades.Count - 1];
      double lastProfitCurrency = lastTrade.ProfitCurrency;
      }

      if (lastProfitCurrency < 0)
      {
      MCL == MCL+1;

      }

      if (Date(0) != Date(1))
      {
      MCL ==0;

      }​

      Comment


        #4
        Well, you're putting the evaluation of lastProfitCurrency outside of its scope.

        You would have to do something like this instead if you're not going to put that MCL code inside the Count guard code:

        Code:
        double lastProfitCurrency = 0;
        if (SystemPerformance.AllTrades.Count > 0)
        {
        Trade lastTrade = SystemPerformance.AllTrades[SystemPerformance.AllTrades.Count - 1];
        lastProfitCurrency = lastTrade.ProfitCurrency;
        }
        
        if (lastProfitCurrency < 0)
        {
        MCL == MCL+1;
        
        }
        
        if (Date(0) != Date(1))
        {
        MCL ==0;
        
        }​​
        Bruce DeVault
        QuantKey Trading Vendor Services
        NinjaTrader Ecosystem Vendor - QuantKey

        Comment


          #5
          Hello RM,

          Thanks for your post.

          QuantKey_Bruce is correct in the advice they provided. You could use the SystemPerformance.AllTrades TradeCollection to get the last trade and then use lastTrade.ProfitCurrency to get the profit of the last trade quoted in currency.

          See the help guide documentation below for more information and sample code.

          TradeCollection: https://ninjatrader.com/support/help...collection.htm
          Trade: https://ninjatrader.com/support/help...html?trade.htm
          Brandon H.NinjaTrader Customer Service

          Comment

          Latest Posts

          Collapse

          Topics Statistics Last Post
          Started by PeakTry, Today, 10:49 AM
          0 responses
          2 views
          0 likes
          Last Post PeakTry
          by PeakTry
           
          Started by llanqui, Today, 10:32 AM
          0 responses
          4 views
          0 likes
          Last Post llanqui
          by llanqui
           
          Started by StockTrader88, 03-06-2021, 08:58 AM
          45 responses
          3,992 views
          3 likes
          Last Post johntraderuser2  
          Started by TAJTrades, Today, 09:46 AM
          0 responses
          8 views
          0 likes
          Last Post TAJTrades  
          Started by rhyminkevin, Yesterday, 04:58 PM
          5 responses
          62 views
          0 likes
          Last Post dp8282
          by dp8282
           
          Working...
          X