Using the object thomsonreuters::ema::access::ReqMsg in EMA C++ how can I require a Limited Level-2 Market by Price Data Model ?
Aside from set the domain type to MMT_MARKET_BY_PRICE, which other parameters I need to set to have a Limited Level 2 using this domain?
Can you please explain what you mean by Limited?
Do you mean top of order book e.g. top 10 or 20 orders?
The purpose of the MarketByPrice Domain is to provide Full order book depth.
If you want to obtain top of order book, then I recommend you contact the Content helpdesk to check if there are any appropriate RICs that provide the top of order book for your particular instruments. Note that this will be a MarketPrice domain and possibly in a Chain format - depending on the depth.
Example MarketByPrice - note field names ORDER_PRC, ORDER_SIDE, ACC_SIZE etc.
Example top of orderbook - note field names BEST_BID1, BEST_BSIZ1, BEST_ASK1, BEST_ASIZ1 etc.
The above top of order book is just an example - the actual field names etc may vary depending on the asset class, exchange etc.
If top of orderbook / limited orderbook is not available for your instruments, then you could obtain the full depth with a MarketByPrice request and then sort the book as described in this article - if required.
If I understand well, to obtain data similar to your first image (ORDER_PRC, ORDER_SIDE, ACC_SIZE etc.) I need to set as domain MMT_MARKET_BY_PRICE, otherwise to obtain data (BEST_BID1, BEST_BSIZ1, BEST_ASK1, BEST_ASIZ1 etc.) similar to your second image (and my posted image) I need to set as domain MMT_MARKET_PRICE.
However, Reading your article now is all more clear.
Your understanding is correct - to a point. However, you need to understand that the RIC code with the relevant domain will differ. For example using:
In other words, the RIC code for top of order book will differ from the Quote and Trade RIC.