Comments (10)
I did not quickly find links to those conversations but did locate a key sample file I was looking to post.
In the attached .cs file by NT team member NT_Jim ...
.. from within OnMarketUPdate() calls a function "private void InlineExecutionUpdate(Order order, double AvgFillPrice, int quantity, MarketPosition marketPosition, string orderId)" to act as a pseudo OnExectutionUpdate() event manager and attempts to address at least some of the same concerns you list above.
Note the attached file is NOT an NT8 export file. I just zipped the *.cs file in place so that GitHub would let me attach it to this message.
SampleUnmanagedRithmicInteractiveBrokersNonNTOnOrderUpdate2020.zip
`
from ninjatrader8.
HI Tom,
Saw this issue posted. Just wanted to check if you have seen the significant work NT_Jim put in to address at least some of these issues. Reply if not and I will do find some links to those conversations and sample templates.
James
from ninjatrader8.
HI Tom,
Saw this issue posted. Just wanted to check if you have seen the significant work NT_Jim put in to address at least some of these issues. Reply if not and I will do find some links to those conversations and sample templates.
James
i hadnt even looked to be honest but i will now you have posted the example excellent
from ninjatrader8.
I did not quickly find links to those conversations but did locate a key sample file I was looking to post.
In the attached .cs file by NT team member NT_Jim ...
.. from within OnMarketUPdate() calls a function "private void InlineExecutionUpdate(Order order, double AvgFillPrice, int quantity, MarketPosition marketPosition, string orderId)" to act as a pseudo OnExectutionUpdate() event manager and attempts to address at least some of the same concerns you list above.
Note the attached file is NOT an NT8 export file. I just zipped the *.cs file in place so that GitHub would let me attach it to this message.
SampleUnmanagedRithmicInteractiveBrokersNonNTOnOrderUpdate2020.zip
`
AWESOME thank you - sounds like i was thinking along the same lines a psuedo onExec - excellent i will have to try find time i hope in the next few weeks to get into this - bogged down with asp.net core and blazor SignalR atm to buikld a cloud based correlation gui and api for a product - ETA 2 weeks
from ninjatrader8.
Ok I had a brief look at the code example some caveats are
- OnOrder doesnt always fire - connection or other issues
- Position tally cannot safely be done and left within in scope OrderFills due to caveats external and internal
Part A:
So we might look to quiz the connection for rithmic or IB or via parameter turn on a different workflow that would push through a call to onExec or other method to finalize the order enrty cycle.
OnOrder to drive it and of possibly push a simulated call to OnExec etc
Possible also update the executions collection to push through the onExec event - but care needs to be taken not to upset executions and trade calculations - if it worked
Part B: then also a pseudo onMArketData timeout monitor can look for the workflow and assess its complete and nudge it forwards as plan b pattern
from ninjatrader8.
Sorry but still far off from being able to address this myself due to other obligations kidnapping my time 24/7 almost coding for months on end etc
from ninjatrader8.
Unable to find time to investigate meanwhile waiting for NT to fix this in the platform as this is clearly just an omission their end and no doubt with no fiscal reasons to fix it as a priority.
Please note there are other projects as above that have fixed this issue by adding code to the engine - for all other broker users this wont be required etc
Time permitting will wheel back to this if this projects becomes active as a dependency on other projects etc
from ninjatrader8.
One way to look at this is:
This type of engine is only really good for backtesting and limited in live trading for attended and non fault tolerant commercial swing - but excellent for rapid algo design and testing.
So then we would use an engine that does not suffer from any brokerage limiations as its totally generic bound to the API layers internally within NT8 itself such as the type we use here: https://algofuturestrader.zendesk.com/hc/en-us/articles/360055568611-NinjaTrader-7-AFT7-day-trading-futures-system-overview-of-components
from ninjatrader8.
So much in the market has shifted .. and a huge amount of liquidity has shifted to crypto that rather than lights-out auto-trading I am presently more interested in first in automation assisted trading, then leading toward human assisted auto-trading and finally some lights-out algo execution again.
These images demonstrate the depth of complexity to be managed and in general what I am working to build with an eye toward crypto and classic futures for deployment. https://algofuturestrader.zendesk.com/hc/en-us/articles/360055568611-NinjaTrader-7-AFT7-day-trading-futures-system-overview-of-components
If for no other reason than to respect the NinjaTrader Terms of Service for me NT8 needs to be an optional companion to the core platform.
For the interface stack I have been investigating
-
non-NT8 WPF, WinUI 3 (including for the server side) and a few other Windows centric things.
-
A few high speed bi-directional C# <> Javascript webhook interface scheme caught my eye:
2.1) One depends upon cref chromium, and another broad Javascript. cref might be a little old but the author claims the integration is very light.. and can be free from asyc dependencies etc. This would open up the possibility to leverage nice fast and responsive existing React and Vue UIs.
2.2) I saw another bi-directional C# <> Javascript webhook interface for integrating the slower-and-less-sexy-than-React Microsoft Blazor web UI ... another variant using Microsoft's not yet mature replacement for cref.
3). Regarding WinUI 3.. Third Party dependencies are a path that raises concerns for me but the three (WinUI3, Maui, Xamarin) free forever libraries on this page have caught my eye.. they do simplify the work to build a UI.. https://www.devexpress.com/Products/Try/
A repository with the DevEx WinUI3 demo code https://github.com/DevExpress/winui-demos
I attached the installer for the more reliable pre-compiled version of the WinUI3 component demo. This demo shows the two code pages (UI screen, C# code behind the screen) for each demo screen.. You also get access to the precompiled demo once you sign up for the free WinUI3 component library. I don't know how long term I would use the WinUI3 package, I am thinking if entry is low enough cost and the NET6 libraries it depends on run and Windows clients as well as cloud data center servers might give a lot of UI fast and let me work on the other topics faster.
- What about WPF? NT8 WPF is hugely complex to build in given the restrictions the NT added.
If building a NT8 collaborating but independent window panels:
- Github has popular WPF build kits that might simplify a path forward with WPF
Your thoughts?
James
from ninjatrader8.
im a long fan of devexpress and have an active annual sub
raw WPF in Visutal studio works great
NT8 WPF yes i try to avoid it as much as possible.
the only caveat is for things like property girds if you need them the one in nt8 is not good to work with.
devexpress and others might be better or use a winforms host etc...
so this convo we can put into a discussion on uis as this is about rithmic and so on...
point being im not going to resolve it as the best layer for a UI is not in a strategy as NT8 strategy is not the best thing for hybrid algo trading in NT8 - this will demonstrate exactly how soon as i can drop onto it- http://algofuturestrader.com
we can discuss more at #52
from ninjatrader8.
Related Issues (20)
- Compilation Error HOT 1
- Greetings! HOT 4
- Question HOT 2
- Blazor and Maui HOT 1
- Regarding the latest build. Did you intend to include Resource.resx and @SMA.cs ? HOT 17
- NinjaTrader 8 Installation Zip File required for easy import into NinjaTrader HOT 2
- File Structure ATSQuadroStrategyBase.GUI Folder HOT 1
- Which code to compile HOT 2
- Bug in OnOrderUpdate with case OrderState.Working: HOT 1
- Getting Compile error for UserControlNinjaBuddy\xaml\txt.cs HOT 3
- Code Breaking Changes - Renamed folder from ATSQuadroStategyBase to ATSQuadroStrategyBase
- DateTime.Now and Then (backtests) HOT 6
- String.Format Index error inside example Exception HOT 1
- Compile error HOT 1
- ATSIndicatorQSBStrategyInfoBar.PNL not being updated HOT 1
- does replay mode get a timeout from the workflow? HOT 1
- does unsafe mode have a bug - OrdersActive List is not populated in "Unsafe Mode HOT 1
- ATSIndicatorQSBStrategyVisualiser is also not populated with data HOT 2
- Compilation Error With Base HOT 2
- Rithmic trade entry executions does not trigger Stops and Targets due to execution caveat in NinjaTrader 8 with Rithmic HOT 11
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ninjatrader8.