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 to convert points to ticks

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

    How to convert points to ticks

    I am subtracting ES prices, so something like Close - Indicator = 3. But that is 3 ES points. How do I convert that to ticks so I can pass into a Stop order? Thanks.

    #2
    Hello cashinvestor,

    Thank you for your post.

    The tick size for the ES is 0.25, so you'd want to multiply a point value by 4 to get the number of ticks to pass to a Stop order. Alternatively, the variable TickSize will always hold the tick size for a given instrument, so you could also divide your point value by TickSize to get that as well.

    Please let us know if we may be of further assistance to you.
    Kate W.NinjaTrader Customer Service

    Comment


      #3
      How does one determine the PointSize of any instrument? The TickSize (for Forex, at least) is a price value differential. For example, with AUDUSD, the TickSize is 0.00001 and PointValue is 1.0.

      Obviously, one knows the Forex instrument has 10 Ticks per Point/Pip. But if one did not know this, how would one determine it for any instrument?

      Ideally, one would want either PointSize or TicksPerPoint, or both.

      Thanks.
      Last edited by jeronymite; 07-17-2020, 09:38 PM.
      Multi-Dimensional Managed Trading
      jeronymite
      NinjaTrader Ecosystem Vendor - Mizpah Software

      Comment


        #4
        Try using PointValue.

        Comment


          #5
          Thanks for the suggestion. Unfortunately, PointValue is of not much use for the desired information. It provides the currency value of 1 full point of movement. Useful, but not what's needed.

          How many Ticks in a Point for any particular Instrument? That's what needed. TickSize is useful too, but again, not for what is needed here.

          As mentioned previously, ideally, one would want either PointSize or TicksPerPoint, or both.
          Multi-Dimensional Managed Trading
          jeronymite
          NinjaTrader Ecosystem Vendor - Mizpah Software

          Comment


            #6
            Well then, try this,

            Code:
            double TickValue = Instrument.MasterInstrument.PointValue * TickSize;
            
            double TicksPerPoint = Instrument.MasterInstrument.PointValue / TickValue;

            Comment


              #7
              Hello jeronymite,

              Thank you for your note.

              The code bltdavid illustrated in the previous post is exactly what I was referring to in my initial reply:

              Alternatively, the variable TickSize will always hold the tick size for a given instrument, so you could also divide your point value by TickSize to get that as well.
              This would be the suggested method for calculating the number of ticks per point for any given instrument.

              Please let us know if we may be of further assistance to you.
              Kate W.NinjaTrader Customer Service

              Comment


                #8
                Thanks for further discussion on this.

                This actually warrants a more diverse and generic discussion, I think, since it really ranges across such things as PointValue, TickSize, Points vs Pips vs Ticks, and these in the different contexts of different Instrument types. For example, here are the various PointValue/TickSize for a variety of Instruments (shown as Code merely for fixed formatting):
                Code:
                [FONT=courier new]Future NQ     20.0  / 0.25[/FONT]
                [FONT=courier new]Future CL   1000.0  / 0.01[/FONT]
                [FONT=courier new]Future 6E 125000.0  / 0.00005[/FONT]
                [FONT=courier new]Stock  AAPL    1.0  / 0.01[/FONT]
                [FONT=courier new]Index  ^SP500  1.0  / 0.01[/FONT]
                [FONT=courier new]Forex  AUDUSD  1.0  / 0.00001[/FONT]
                [FONT=courier new]Forex  AUDJPY  0.01 / 0.001[/FONT]
                [FONT=courier new]Crypto BTCEUR  1.0  / 0.01[/FONT]
                As can be easily seen, there is a large variety of these values depending on the Instrument and Instrument type.

                My questions arise from the fact that the use of PointValue and TickSize as has been discussed so far is problematic for various Instruments in terms of calculating the value of a "point" (or a pip or a tick). It seems that the approach already discussed really only works with "fixed value" Instruments such as NQ and CL etc, generally Futures. For all other types of Instrument, notably Forex which is where I was coming from in the original discussion, "point value" cannot be determined solely from PointValue and TickSize. These Instruments have a "market value" per "point" that fluctuates moment by moment. One must also be explicit in making value calculations based on a fixed position size, specifically one contract or one standard lot.

                In the case of "currency Instruments", which would certainly include Forex and arguably Crypto and the 6* Future Instruments, one may wish to use Pips as the basis for "value" calculations. This raises the matter of what constitutes one Pip in any Instrument. For Forex, that is easy -- one Pip is 10 Ticks. For other currency Instruments, it may be formally defined somewhere, but I am not aware of such formal definitions. For Crypto, I would assume one Pip is one Tick, and for 6* Instruments, one Pip is 2 Ticks. But that is just what I would expect from an "intuitive" perspective.

                So, I guess the questions become:
                1. When are PointValue and TickSize unequivocally the complete specification of all things needed to calculate the true market value of a Point and the number of Ticks per Point for any/all Instruments?
                2. Is there a formal specification of Pip size vs TickSize for all relevant Instruments?
                3. How does one calculate the true market value of one Point of non-currency Instruments that always specify 1.0 as their PointValue?
                4. How does one calculate the true market value of one Point of currency Instruments (Forex in particular) that always specify 1.0 as their PointValue?
                The answers to some of these questions may be obvious. Question 3, for example, might be as simple as "the current Ask or Bid price". A similar answer may apply to some currency instruments such as the 6* Futures. It is not so obvious for Forex. One also must take into account the denomination of currency of the brokerage account as to how the "value" is expressed. A USD account will have one value vs a EUR account, for example. This latter consideration requires taking specific currency exchange rates into account -- a non-trivial exercise, especially in real time.

                Many thanks for continuing to engage in this discussion to help clarify these matters.
                Multi-Dimensional Managed Trading
                jeronymite
                NinjaTrader Ecosystem Vendor - Mizpah Software

                Comment


                  #9
                  Hello Jeronymite,

                  Thank you for your reply.

                  1. All instruments except FOREX
                  2. TickSize is configured per instrument, Pip size/TickSize should just change if the base currency is JPY based (specific to Yen based pairs). All other Forex would have TickSize equal 0.0001 to match the pip value.
                  3. I believe in this case, those would just be $1 per point. Is there a specific instrument you are looking for clarification on?
                  4. You would need the conversion rate, either by adding the forex pair or the futures instrument for conversion. You could reference the built in NetChange Market Analyzer Column to see how the rate is included in calculation, and you can also consider referencing our PnL Calculation Mode documentation if it helps explain. The conversion rate would be needed in order to convert the base currency of say EUR/GBP to USD. You would use GBP/USD to get the conversion rate to convert to USD.

                  You'd have to do that for any base currency that does not match the account denomination.



                  Thanks in advance; I look forward to assisting you further.
                  Kate W.NinjaTrader Customer Service

                  Comment


                    #10
                    Thanks, Kate.

                    Some further comments:
                    • Can the exclusion of Forex from the use of PointValue, in particular, be documented, please? In fact, significantly expanding/enhancing the documentation in this area generally would be very helpful. It should cover matters I've raised, including the exclusion of Forex from PointValue relevance, the relationship between Ticks/TickSize and Pips (a discussion on Pips would be useful), contract vs Lot depending on InstrumentType, the relevance of currency denomination in PointValue (namely, it is specified in USD), etc. Thanks.
                    • Your response to Q2 does not seem to align with the prevailing view on Pips vs Ticks in Forex. My understanding is that every non-JPY Forex pair has a TickSize of 0.0000'1 and a Pip size of 0.0001. JPY pairs have a TickSize of 0.00'1 and a Pip size of 0.01. In both cases, there are 10 Ticks per Pip.
                    • I have previously coded real-time Pip values for multiple instruments based on real-time exchange rates, but I will also look at the NetChange Market Analyzer Column and PnL Calculation Mode documentation. Thanks.
                    Thanks again for this useful discussion.
                    Multi-Dimensional Managed Trading
                    jeronymite
                    NinjaTrader Ecosystem Vendor - Mizpah Software

                    Comment

                    Latest Posts

                    Collapse

                    Topics Statistics Last Post
                    Started by rhyminkevin, Today, 04:58 PM
                    3 responses
                    47 views
                    0 likes
                    Last Post Anfedport  
                    Started by iceman2018, Today, 05:07 PM
                    0 responses
                    5 views
                    0 likes
                    Last Post iceman2018  
                    Started by lightsun47, Today, 03:51 PM
                    0 responses
                    7 views
                    0 likes
                    Last Post lightsun47  
                    Started by 00nevest, Today, 02:27 PM
                    1 response
                    14 views
                    0 likes
                    Last Post 00nevest  
                    Started by futtrader, 04-21-2024, 01:50 AM
                    4 responses
                    50 views
                    0 likes
                    Last Post futtrader  
                    Working...
                    X