SOAP

Hi Marcas, yes, SOAP uses dotNET 10 but it also uses WinForms so it could eventually be made cross platform with a lot of Copilot assistance...
Data management is well compartmented so another provider could be plugged in. Using IB is easier: it offers simpler order management, executions tracking etc.
It's been a lot of work already and I am more interested in adding vol surface features, multi-currency support and enabling futures trading (FOP).
 
Last edited:
I'm mostly interested in coding trading related projects than in projects as trading support.
Unfortunately it sounds like I wont be able to help.
I know you put a lot of work in SOAP - glad to hear the project is still active.

Not sure how it is now, but I think TOS allows outside us clients now.. IT has (had) superior api in comparison to IB. Not that I want to add more work but you may consider tapping to that, even simple chain harvesting directly from platform can work well - unless you insist on streaming.

If you have a short presentation of current state I will watch with interest - let it be short pls... :)
 
To answer you: SOAP is a free to eventually very inexpensive alternative to ONE. SOAP's look and feel is similar too.
TOS did not allow access to their API for a long while during transition to Schwab's. I don't know the situation now.
The IB API may be a nightmare but you get what you need, for instance the market maker's underlying price outside market hours.
Unlike ONE, it models everything as soon as there is data available (I am not sure you get SPX options data outside regular market hours on TOS).
Calculations are entirely mine, so that has resolved any doubt I used to have with ONE. I also implemented a few goodies like for instance the DivYield suppression using a synthetic forward.
I will post a short video soon.
 
Thanks. I have an idea what SOAP is and what it does from previous presentations. Wanted to see what have changed since.
Again on my side it is purely platonic interest.
 
I am looking for a couple of motivated beta testers for SOAP.
Thank you.
Hi Bruno - I am interested in testing SOAP. I use ONE regularly and trade with an IB account, so I have the basic infrastructure. I would dearly like to see improvements to ONE such as:
- ability to analyze short term hedges with related instruments (e.g. XSP hedging SPX over a weekend)
-24 hr timestamps
-performance plots by account
-accounting for dividends
-accurate risk graph during overnight sessions
These are all features I've requested from ONE but they seem to be just in maintenance mode. Other features I have not yet requested:
-open just the monitor dock to keep it on-screen at all times
-option chain tables with specified expiration dates (not just contiguous dates)
-multiple t+lines by the hour intraday for 0DTE trades.

It must be able to log trades and adjustments and provide performance reports. Would be nice to have it cloud based but I understand that adds cost. I agree that the community needs a low or no cost app for this. So many folks rely just on ToS but it does not give a very informative picture and it does not keep track of adjustments. A feature I really like in ONE is that it shows multiple t+ lines so you can see how P&L might progress over time,. A kudo for ONE is that it is very robust. I've had an occasional freeze but it always recovers gracefully. Much more robust than NinjaTrader, for example!

I like IB especially because I can make adjustments in the evening. I live in Pacific time zone.

I trade Wheel options (short term OTM puts) and SPX complexes which are usually a combo of time spreads and verticals & not more than 14DTE. I analyze a new setup in ONE then manually place my trades in IB's TWS. I watch the greeks and mark position within the tent to guide adjustments. I know it's clumsy but I haven't taken the time to set up an automated interface & I'm not sure I trust the interface built into ONE. Also, I've read that the TWS API is not as reliable as ToS so I use ToS for the data feed. Learning to use TWS' API is on my to-do list however. I have a fantasy about fully automating Phoenix option trades with IB and Gemini is helping me with that.

addendum - I just watched a bunch of your YouTube videos from 6 years ago so I'm now a little more familiar with SOAP. So, a few more comments and questions:
- I'm not a coder but I suspect that's ok
- I use the Google ecosystem; prefer Sheets and Google Drive rather than Excel and OneDrive, but since the file transfers seem to be CSV that might work ok. I could use Excel if necessary but prefer Sheets.
- I use ONE's backtesting only occasionally. It is clumsy & difficult to use. I would not miss it. I agree with your thought that sensitivity to the current situation is more important.
- Would it be possible to use ToS for data but with IB execution?
- The ONE Monitor Dock is very important to me. I keep it on screen all the time showing typically 10 wheel CSP or CC trades (7-14 days each) and 2 or 3 SPX complexes. Shows me when to exit or roll any of these. Will SOAP provide something similar? It appears to show just one position at a time.
- Your expertise in volatility impact/management will be very helpful. I've traded options for 3 years using ONE and for the first year I didn't understand why performance of some trades didn't follow what theta and price movement would predict. Eventually I realized that volatility was like an invisible hand that could often be more powerful than theta. My current practice for complexes is to find setups that minimize vega (as shown by ONE). This is not a great solution but better than nothing.

Let me know how I can help. ...Bill Dawson
 
Last edited:
Inline reply below:

Improvements to ONE such as:
- ability to analyze short term hedges with related instruments (e.g. XSP hedging SPX over a weekend)

It is coded but not fully tested enabled yet. The objective is to be able to send a combo that includes both options and the underlying (if tradable) or a proxy.

-24 hr timestamps

That is there for 0DTE and 1DTE. I can extend it further.

-performance plots by account

Comprehensive account management including advisor accounts etc) is still on my to-do list i.e. on a back burner.

-accounting for dividends

SOAP can either use known forward dividends (from IB) or use uDiv, which is a dividend cancellation underlying estimate through a synthetic forward.

-accurate risk graph during overnight sessions

SOAP uses IB’s dealers pricing extensively, so charts are accurate outside market hours, and that feature is EXTREMELY useful.
Many larger institutions trade outside rgular market hours; they probably have arranged spread with IB. Trading from 8AM EST when the market marker desk switches from London to Chicago, is almost as good as during the regular session.


These are all features I've requested from ONE but they seem to be just in maintenance mode. Other features I have not yet requested:
-open just the monitor dock to keep it on-screen at all times

At this time, there can be more that one analysis (called OA) but SOAP only shows one docked to full screen, with or without visible chains.

-option chain tables with specified expiration dates (not just contiguous dates)

I think it has that. Chains are scanned and available expiries used exclusively.

-multiple t+lines by the hour intraday for 0DTE trades.

Yes. As mentioned above.

It must be able to log trades and adjustments and provide performance reports.

Logs with adjustments are available. I also coded a time line to load a trade up to a specific date.

Would be nice to have it cloud based but I understand that adds cost.

It is not cloud based yet, and price is not really an object.

I agree that the community needs a low or no cost app for this.

It will be free for beginners, very cheap for others. But there will be a premium version at some point. For instance I am implementing futures support right now, and it is not everyone’s trading.

So many folks rely just on ToS but it does not give a very informative picture and it does not keep track of adjustments.

A feature I really like in ONE is that it shows multiple t+ lines so you can see how P&L might progress over time,. A kudo for ONE is that it is very robust. I've had an occasional freeze but it always recovers gracefully. Much more robust than NinjaTrader, for example!

I like IB especially because I can make adjustments in the evening. I live in Pacific time zone.

I trade Wheel options (short term OTM puts) and SPX complexes which are usually a combo of time spreads and verticals & not more than 14DTE. I analyze a new setup in ONE then manually place my trades in IB's TWS.

SOAP can send combos through to IB (or record directly with prices, bypwassing the TWS) and executions can be added to logs as well.

I watch the greeks and mark position within the tent to guide adjustments. I know it's clumsy but I haven't taken the time to set up an automated interface & I'm not sure I trust the interface built into ONE. Also, I've read that the TWS API is not as reliable as ToS so I use ToS for the data feed.

The IB API can be quirky at times, but one learns how to circumvent the few shortcomings.

I could add TOS as a data feed. The API was not available for a while during the transition to Schwab.

Learning to use TWS' API is on my to-do list however. I have a fantasy about fully automating Phoenix option trades with IB and Gemini is helping me with that.

addendum - I just watched a bunch of your YouTube videos from 6 years ago so I'm now a little more familiar with SOAP.

That was an old prototype but it had features, some of which I have not recoded yet.

Inline reply:

So, a few more comments and questions:
- I'm not a coder but I suspect that's ok
- I use the Google ecosystem; prefer Sheets and Google Drive rather than Excel and OneDrive, but since the file transfers seem to be CSV that might work ok. I could use Excel if necessary but prefer Sheets.

The new SOAP does not use an external spreadsheet utility.

- I use ONE's backtesting only occasionally. It is clumsy & difficult to use. I would not miss it. I agree with your thought that sensitivity to the current situation is more important.

I agree and I have not coded SOAP for backtesting. In fact I would say that over half of ONE’s cost comes from historical data that is very expensive. I have coded for limited historical data from IB to at least backtrack for days or weeks, but that is not the same as statistical back testing, that only few tools allow (not ONE).

- Would it be possible to use ToS for data but with IB execution?

Yes. Once I get access to TOS data, which I have not requested yet.

- The ONE Monitor Dock is very important to me. I keep it on screen all the time showing typically 10 wheel CSP or CC trades (7-14 days each) and 2 or 3 SPX complexes. Shows me when to exit or roll any of these. Will SOAP provide something similar? It appears to show just one position at a time.

There are elements of it. I need to think that through.

- Your expertise in volatility impact/management will be very helpful. I've traded options for 3 years using ONE and for the first year I didn't understand why performance of some trades didn't follow what theta and price movement would predict. Eventually I realized that volatility was like an invisible hand that could often be more powerful than theta. My current practice for complexes is to find setups that minimize vega (as shown by ONE). This is not a great solution but better than nothing.

That has been the whole point of having my own analysis tool. For instance, SOAP can plot Vomma which is a much needed indicator when volatility is low and could explode any time (e.g. early 2018). In fact Vomma was my primary motivation when I started coding SOAP1.


Lastly, I have taken my time, because I recoded SOAP over and over so that the project can be maintained without me eventually. I AM OLD!
 
Last edited:
(Bruno, I remember you were working with somebody on this project. Do you still have a coding team/group?

Your project looks very ambitious - doable for a single coder but for sure exhausting / hard to maintain / to debug / to test / and to do many more things when coding lone. I'd say its' close to impossible task when project goes life - unless that's all you do.

I kinda deal with the same situation, or rather dealt with bc I gave up. My take is to create bunch of smaller apps that share the same philosophy and libraries - if possible - with a thought of possible future conglomeration. At this point possibility of creating single swiss knife app are very distant...
It kinda works better with specialized apps anyway - when you have research and practical trading in mind - it would be close to impossible to share it with others at this point. )
 
Hi Bruno - I sent a DM to you with more information about my interest. Not sure if DM alerts you or if you have to proactively look for it.
 
(Bruno, I remember you were working with somebody on this project. Do you still have a coding team/group?

Your project looks very ambitious - doable for a single coder but for sure exhausting / hard to maintain / to debug / to test / and to do many more things when coding lone. I'd say its' close to impossible task when project goes life - unless that's all you do.

I kinda deal with the same situation, or rather dealt with bc I gave up. My take is to create bunch of smaller apps that share the same philosophy and libraries - if possible - with a thought of possible future conglomeration. At this point possibility of creating single swiss knife app are very distant...
It kinda works better with specialized apps anyway - when you have research and practical trading in mind - it would be close to impossible to share it with others at this point. )
Hi Marcas, yes, out of sheer laziness I suppose, I chose to have someone else code most of the project but it didn't work as intended, and I ended up being the external "expert" or "consultant" to a project I didn't own.

I pulled up my sleeves and decided to start over from scratch, all in C# and .NET, hoping that one day .NET would make it fully portable.
I coded specialised tools, mostly in C or C++, and coding a full app looked like a daunting objective. The C# SOAP of mine is on the right track, but I am not and will never be a professional programmer. I am just doing a fair job and AI has been productive.
I would like to turn it into a group project eventually, and I could arrange a Zoom call to discuss possible avenues with interested parties.
 
I do understand.
You should work with a coder who is not a trader :)

As much as I would like to help - I can;t. I'm also self learned, not a professional programmer. I know very little C/C++ not #. Nothing of .NET. All I do is python (but thought of writing some C procedures for it). Was also thinking of making my project(s) a group thing, but it is so hard to find willing and competent people (you can if you are paying) who are with you on the project (on the same wave.. whatever). But also conveying your ideas takes time. I admire your persistence.
 
Last edited:
Inline reply below:

Improvements to ONE such as:
- ability to analyze short term hedges with related instruments (e.g. XSP hedging SPX over a weekend)

It is coded but not fully tested enabled yet. The objective is to be able to send a combo that includes both options and the underlying (if tradable) or a proxy.

-24 hr timestamps

That is there for 0DTE and 1DTE. I can extend it further.

-performance plots by account

Comprehensive account management including advisor accounts etc) is still on my to-do list i.e. on a back burner.

-accounting for dividends

SOAP can either use known forward dividends (from IB) or use uDiv, which is a dividend cancellation underlying estimate through a synthetic forward.

-accurate risk graph during overnight sessions

SOAP uses IB’s dealers pricing extensively, so charts are accurate outside market hours, and that feature is EXTREMELY useful.
Many larger institutions trade outside rgular market hours; they probably have arranged spread with IB. Trading from 8AM EST when the market marker desk switches from London to Chicago, is almost as good as during the regular session.


These are all features I've requested from ONE but they seem to be just in maintenance mode. Other features I have not yet requested:
-open just the monitor dock to keep it on-screen at all times

At this time, there can be more that one analysis (called OA) but SOAP only shows one docked to full screen, with or without visible chains.

-option chain tables with specified expiration dates (not just contiguous dates)

I think it has that. Chains are scanned and available expiries used exclusively.

-multiple t+lines by the hour intraday for 0DTE trades.

Yes. As mentioned above.

It must be able to log trades and adjustments and provide performance reports.

Logs with adjustments are available. I also coded a time line to load a trade up to a specific date.

Would be nice to have it cloud based but I understand that adds cost.

It is not cloud based yet, and price is not really an object.

I agree that the community needs a low or no cost app for this.

It will be free for beginners, very cheap for others. But there will be a premium version at some point. For instance I am implementing futures support right now, and it is not everyone’s trading.

So many folks rely just on ToS but it does not give a very informative picture and it does not keep track of adjustments.

A feature I really like in ONE is that it shows multiple t+ lines so you can see how P&L might progress over time,. A kudo for ONE is that it is very robust. I've had an occasional freeze but it always recovers gracefully. Much more robust than NinjaTrader, for example!

I like IB especially because I can make adjustments in the evening. I live in Pacific time zone.

I trade Wheel options (short term OTM puts) and SPX complexes which are usually a combo of time spreads and verticals & not more than 14DTE. I analyze a new setup in ONE then manually place my trades in IB's TWS.

SOAP can send combos through to IB (or record directly with prices, bypwassing the TWS) and executions can be added to logs as well.

I watch the greeks and mark position within the tent to guide adjustments. I know it's clumsy but I haven't taken the time to set up an automated interface & I'm not sure I trust the interface built into ONE. Also, I've read that the TWS API is not as reliable as ToS so I use ToS for the data feed.

The IB API can be quirky at times, but one learns how to circumvent the few shortcomings.

I could add TOS as a data feed. The API was not available for a while during the transition to Schwab.

Learning to use TWS' API is on my to-do list however. I have a fantasy about fully automating Phoenix option trades with IB and Gemini is helping me with that.

addendum - I just watched a bunch of your YouTube videos from 6 years ago so I'm now a little more familiar with SOAP.

That was an old prototype but it had features, some of which I have not recoded yet.

Inline reply:

So, a few more comments and questions:
- I'm not a coder but I suspect that's ok
- I use the Google ecosystem; prefer Sheets and Google Drive rather than Excel and OneDrive, but since the file transfers seem to be CSV that might work ok. I could use Excel if necessary but prefer Sheets.

The new SOAP does not use an external spreadsheet utility.

- I use ONE's backtesting only occasionally. It is clumsy & difficult to use. I would not miss it. I agree with your thought that sensitivity to the current situation is more important.

I agree and I have not coded SOAP for backtesting. In fact I would say that over half of ONE’s cost comes from historical data that is very expensive. I have coded for limited historical data from IB to at least backtrack for days or weeks, but that is not the same as statistical back testing, that only few tools allow (not ONE).

- Would it be possible to use ToS for data but with IB execution?

Yes. Once I get access to TOS data, which I have not requested yet.

- The ONE Monitor Dock is very important to me. I keep it on screen all the time showing typically 10 wheel CSP or CC trades (7-14 days each) and 2 or 3 SPX complexes. Shows me when to exit or roll any of these. Will SOAP provide something similar? It appears to show just one position at a time.

There are elements of it. I need to think that through.

- Your expertise in volatility impact/management will be very helpful. I've traded options for 3 years using ONE and for the first year I didn't understand why performance of some trades didn't follow what theta and price movement would predict. Eventually I realized that volatility was like an invisible hand that could often be more powerful than theta. My current practice for complexes is to find setups that minimize vega (as shown by ONE). This is not a great solution but better than nothing.

That has been the whole point of having my own analysis tool. For instance, SOAP can plot Vomma which is a much needed indicator when volatility is low and could explode any time (e.g. early 2018). In fact Vomma was my primary motivation when I started coding SOAP1.


Lastly, I have taken my time, because I recoded SOAP over and over so that the project can be maintained without me eventually. I AM OLD!

NB: I have also enabled index futures (FOP) and tested it with ES. I will test it later for FX futures options as well.
 
An initial look and feel: short SOAP preview running it outside market hours.
 
Top
Contact Us