edgebips / tastybugs

Bugs in Tastyworks, sent, logged and tracked for follow-up
3 stars 0 forks source link

Curve view fails for FX options with small prices #5

Open blais opened 3 years ago

blais commented 3 years ago

Reporter: Martin Blais Date: 5/3/2021

https://docs.google.com/document/d/1q0jbdsqP_bDIbFroaImbHeiBliCN0xNidpvHmWnGTBw/

Description of problem

The "Trade > Curve" view is impossible to use for options with very small quoted prices. The amount of available zoom simply fails to render this in a usable way.

User Impact

The view is completely unusable.

Steps to reproduce

Expected Behavior

The zoom factor should be relative to the ranges of prices in the underlying.

Probable Cause

The zoom factor is probably currently defined in absolute values, values selected for the typical ranges of prices found in stocks.

However, because the range of quoted prices in futures can vary widely (such as in FX instruments, especially in /6J which has a very small quotient to the dollar), the fixed zoom ranges do not allow sufficient scaling of the view.

A solution would be to compute a set of scaling ranges specific to the min/max prices of an instrument seen in the past year, and allow substantial zooming in and out relative to that. A simpler alternative would be to hard-code one of a few sets of ranges, depending on the instrument.

Suggested improvements

The default scaling factor can be improved. Ideally, the scaling factor could be automatically selected to include the minimum and maximum striked of one's positions + some margins.

Attachments

Here are some screenshots.

https://docs.google.com/document/d/1q0jbdsqP_bDIbFroaImbHeiBliCN0xNidpvHmWnGTBw/

/6J (Japanese yen)

/6E (Euros)

These aren't exotic products… very big currencies. It would be worthwhile to render these properly, also because their quotations can be difficult to interpret (because of the small fractions) and visualizing the curve can provide a useful confirmation of one's position.

Platform Details

TW version: 1.14.2
OS: Linux PopOS! (System76 derivatives of Ubuntu 20.10)
Java: Zulu11
lumia:~$ java -version
openjdk version "11.0.11" 2021-04-20 LTS
OpenJDK Runtime Environment Zulu11.48+21-CA (build 11.0.11+9-LTS)
OpenJDK 64-Bit Server VM Zulu11.48+21-CA (build 11.0.11+9-LTS, mixed mode)

I hope this helps. Thank you!

blais commented 3 years ago

Resolution 2021-05-03 Thank you for writing in. We are aware of this behavior. Unfortunately, the Analysis Curve Mode was originally built just for equities when we did not yet offer futures at the time. The developers will be working on some improvements to the Analysis Mode in order to improve the functionality for futures and futures options including currencies.

​Although we do not have a concrete ETA or timetable for a solution, the team is constantly working on implementing fixes and improvements for our various platforms and services.