Imported from previous forum
Hi All,
I have posted this on the Fixed Income forum as well and decided to cross post here just in case. Please let me know if this is the wrong place.
We currently looking at system that allows clients to trade fixed income instruments on clean price and on yield. We are in the process of defining the fields to be used when communicating with this system. Here is how we have done this previously:
New Order Single:
The client always specifies the Clean Price or Yield-To-Mat. in Price(44) and qualify the type with PriceType(423) to denote whether it is a yield or a price.
Execution Report:
Currently whatever the client specified as Price(44) will be echoed to the client in Price(44) and the value at which it executed in LastPx(31). The price type of the LastPx(31) is identical to Price(44) (i.e. either both are yields or both are clean prices). If LastPx(31) refers to a clean price, then we communicate the corresponding yield in Yield(236) and if LastPx(31) refers to YTM, then we communicate the corresponding clean price in LastParPx(669). This all works fine (so far).
The complexity comes up because we want to disseminate the yield/price conversion prior to the trade actually takes place. In this case we need a Yield field to communicate the yield if the Price(44) refers to a clean price and something in the lines of a ‘ParPx’ if the Price(44) refers to the yield.
Question:
Here is what we plan to do
On Execution Report:
Price(44) will refer to the value that the customer submitted.
LastPx(31) will refer to the value at which the order was executed. (Same price type as Price(44) )
Yield(236) will refer to the yield corresponding to Price(44) if it refers to clean price (i.e. a change from what is mentioned above. This is not necessarily the yield at which the order was executed).
Any proposals on a field to communicate the clean price if Price(44) refers to yield? Is it correct to use YieldRedemptionPrice(697)?
FillYield(1623) will refer to the yield corresponding to LastPx(31) if it refers to clean price. This will be the yield at which the order executed.
LastParPx(669) will refer to the clean price if LastPx(31) refers to yield.
Can anyone let know if the proposed usage of the fields are correct? I tried to find some examples but couldn’t. Sorry if this is a case of pure ignorance.