RiskMaster - Ninjatrader 8 Risk Management Tool
A downloadable tool
๐ Take Control of Your Trading Discipline ๐
RiskMaster is a powerful risk management addon for NinjaTrader 8 designed to help traders stay disciplined, manage risk, and enforce trading rules automatically.
With customizable trading profiles, daily trade limits, profit and loss controls, and time-based restrictions, RiskMaster ensures that your trading strategy stays on track, even when emotions take over.
๐ Now Available for FREE! ๐ RiskMaster was previously a paid service, but Iโve decided to offer it completely free to the trading community! If you find it useful, consider supporting my work through a small donation.
๐ Join the RiskMaster Community & Shape the Future!
Weโre building something amazing, and your voice matters! ๐ฏ
โ Vote on new features โ Share your ideas & feedback โ Connect with fellow traders
๐ก Help me make RiskMaster even better—together!
๐Fill out a form to share your suggestions, feedback and more
๐ HERE
Follow me on socials and be part of the journey, I would love to hear feedback and suggestions!
๐ Facebook
๐X (Twitter)
๐Instagram
๐ฏ Key Features & Functionality
๐ Rules Tab โ Define Your Trading Discipline
Create custom risk management profiles that can be assigned to specific accounts.
โ Profile Name โ Assign a unique name to this set of risk management rules. This helps in easy identification and selection later.
โ Max Allowed Contracts โ Define the absolute maximum number of contracts or lots permitted in a single order or concurrently open position for any trade executed under this profile.
โ Daily Trade Limit โ Specify the maximum total number of trades (i.e., opening new positions) allowed within a single trading day. Exceeding this limit will prevent further trades for the day.
โ Consecutive Loss Limit โ Establish a threshold for the maximum number of consecutive losing trades. Reaching this limit can trigger automated actions, such as halting trading to prevent further losses.
โ Daily Loss Threshold โ Determine the maximum net loss allowed for the account within one trading day. Hitting this limit typically stops all trading activity for the day.
โ Daily Profit Target โ Define a target profit amount for the trading day. Reaching this daily profit goal can trigger actions like disabling further trading to lock in gains.
โ Daily Drawdown โ Specify the maximum acceptable decline in account equity from its peak value achieved during the current trading day. This helps limit potential intra-day losses relative to the day's high balance.
IMPORTANT: This drawdown resets daily based on the NQ futures session rollover time (typically 22:00 or 23:00 UTC), and NOT your user-defined rollover time. This UTC time can vary with US Daylight Saving Time and holidays.
โ Single Trade Loss Limit โ Set a mandatory stop-loss limit, defined as a specific $ amount, for any single trade. Prevents catastrophic loss on an individual position.
โ Single Trade Profit Target โ Define a profit target limit, as a specified $ amount, for any single trade. Can be used for automated take-profit mechanisms or setting realistic gain expectations per trade.
โ Allowed Trading Days โ Select the specific days of the week (e.g., Monday through Friday) when trading activities are permitted under this profile. Trading will be blocked on unselected days.
โ Time Restriction Window โ Define specific time windows during the day (using your local computer's time) when placing new trades is allowed. Attempts to trade outside these hours will be blocked. Useful for avoiding volatile periods or trading specific market sessions.
๐ Profiles Tab โ Manage Your Risk Settings
๐น View, edit, or delete existing trading profiles.
๐น Assign profiles to accounts to enforce risk limits.
๐น Ensure changes take effect from the next trading day.
๐ฐ Accounts Tab โ Real-Time Account Management
๐น Lock Accounts to prevent trading (resets at the new trading day).
๐น Assign Profiles to enforce rules instantly.
๐น Open Multiple Live Account Status Windows Gain better visibility with the new Status Window! This dedicated window shows your live account status, including all available limits, keeping you informed in real-time.
๐ Trading Time
โฐ Time Restriction Window โ Set local trading hours.
โณ Custom Rollover Time (Reset)
We've added a much-requested feature: Custom Rollover Time!
You can now set your preferred daily reset time instead of being stuck with the default. Here's how it works:
โ
Head over to the Settings tab and find Rollover Settings.
โ
Choose your Time Zone, Hour, and Minute for:
- Active Rollover: Your current reset time.
- Pending Rollover: The reset time that will take effect after the next reset period.
๐น The first change takes effect immediately.
๐น After that, any further changes apply only after the next reset—so plan accordingly!
This gives you full control over when RiskMaster clears daily trading limits, aligning with your strategy and schedule.
๐ Now Free โ Support My Work!
Iโve made RiskMaster free for the community! If this tool helps you trade more effectively, consider buying me a coffee โ to support future projects!
Becoming a member on Buy Me a Coffee grants you access to a unique ClearView indicator pack (currently has 4 indicators), a better looking and dynamic indicators as a thanks for my members!
๐ Buy Me a Coffee Or Donate when you feel like it through the addon -> settings -> Donate!
๐ฅ Download & Installation
1๏ธโฃ Download the RiskMaster addon from the link provided.
2๏ธโฃ Follow the installation instructions in the provided video OR the Detailed instructions below to integrate it with NinjaTrader 8.
3๏ธโฃ Set up your trading rules & profiles and start trading with discipline!
4๏ธโฃ Please ensure you are using NinjaTrader Version 8.1.3.1 (64-bit) or higher. Lower or higher versions may be unstable due to changes and lack of support and further development.
๐ฏ RiskMaster โ Trade Smarter, Trade Safer! ๐ฏ
Risk Disclosure: Futures and forex trading contains substantial risk and is not for every investor. An investor could potentially lose all or more than the initial investment. Risk capital is money that can be lost without jeopardizing one's financial security or lifestyle. Only risk capital should be used for trading and only those with sufficient risk capital should consider trading. Past performance is not necessarily indicative of future results.
NinjaTrader Disclaimer: NinjaTraderยฎ is a registered trademark of NinjaTrader Group, LLC. No NinjaTrader company has any affiliation with the owner, developer, or provider of the products or services described herein, or any interest, ownership, or otherwise, in any such product or service, or endorses, recommends, or approves any such product or service.
Updated | 2 days ago |
Status | Released |
Category | Tool |
Rating | Rated 5.0 out of 5 stars (4 total ratings) |
Author | RiskMaster |
Tags | day-trading, ninjatrader, risk-managment, riskmaster |
Download
Install instructions
๐ Step-by-Step Installation
1๏ธโฃ Download RiskMaster
- Click the Download button on this page to get the latest version of RiskMaster.
- Ensure you have NinjaTrader 8 installed on your computer.
2๏ธโฃ Open NinjaTrader & Navigate to the Import Section
- Launch NinjaTrader 8
- Go to Tools โ Import โ NinjaScript Add-On
3๏ธโฃ Select the RiskMaster File
- Browse to the location where you downloaded the RiskMaster
.zip
file. - Do NOT unzip the file—NinjaTrader will handle it automatically.
4๏ธโฃ Confirm the Installation
- Click "Open" and wait for NinjaTrader to process the addon.
- If you see a warning about overwriting files, or trusted developer, make sure to read them and press yes to continue.
5๏ธโฃ Restart NinjaTrader
- Once installation is complete, restart NinjaTrader to ensure everything
๐ Step-by-Step Uninstallation
1๏ธโฃ Open NinjaTrader and navigate to: Tools โ Remove NinjaScript Assembly
2๏ธโฃ Find & select: โ RiskMaster โ RiskMaster.VMRuntime
3๏ธโฃ Click "Remove" and confirm by selecting "Yes"
4๏ธโฃ Press "OK" and restart NinjaTrader to complete the process.
After restarting, RiskMaster will be fully removed from your system. ๐
Development log
- ๐
Dev Log - RiskMaster 1.3.0.1 Update: Small bug fix2 days ago
- ๐
Dev Log - RiskMaster 1.3.0.0 Update: Daily Drawdown, Status Window, Critica...4 days ago
- ๐
Dev Log โ Version 1.2.0.0 Update40 days ago
- Dev Log โ Version 1.1.2.2 Update64 days ago
- Update 1.2.1.1 - minor cosmetic fix.65 days ago
Comments
Log in with itch.io to leave a comment.
How can I copy the logs?
Open the risk master window, go to settings, enable the automatic error reporting (toggle it on) and restart ninjatrader.
if this error occurs again it will automatically send it to me and i can review it.
Either way i already am working on this issue, i've tested a scenario based on your previous messages and images. will update on this issue in the future
aseef, please email me at aviramyagena@gmail.com and i'll provide the details on how to send over the logs
My consecutive losses setting is 2. My first trade with 1 contract was winner, the second trade with 2 contracts which was a loser. Trade master blocked me reason: exceeded consecutive losses.
Question: Having 2 contracts in a trade, means it is considering it as 2 trades. If yes, Is it possible for you to modify so that more than one contract and / or pyramiding be consider as 1 trade?
That's weird, its not supposed to do that.
a trade is considered an open position that was closed regardless on how many contracts it had, so in your scenario:
1. first trade -> open position 1 contract -> exit position at a win -> program resets loss counter to 0 automatically.
2. second trade -> open position 2 contract -> exit position at a loss -> program counts it as one trade loss and not two.
I don't have your logs so i can't figure out what exactly was your setup but this should not have happened.
How I can share you my logs.
Can you tell me from where I can copy the logs.
Question:
Regarding the "Consecutive loss limit" for how long it is programmed to halt trading as of now?
Hi,
If you mean when does a locked a account get reset,
All features but the daily drawdown are reset using your predefined rollover time in the settings menu, it essentially counts as a new trading day once this rollover time occurs, you can read all about the program above.
I'll quote it for you for ease:
โณ Custom Rollover Time (Reset)
We've added a much-requested feature: Custom Rollover Time!
You can now set your preferred daily reset time instead of being stuck with the default. Here's how it works:
โ Head over to the Settings tab and find Rollover Settings. โ Choose your Time Zone, Hour, and Minute for:
๐น The first change takes effect immediately. ๐น After that, any further changes apply only after the next reset—so plan accordingly!
This gives you full control over when RiskMaster clears daily trading limits, aligning with your strategy and schedule.
I think I didn't elaborate it correctly. Thee is a option #4 in the rules tab. which is consecutive loss limit. Let's say if I define 2 in the setting, means 2 losing trades in a row. If I hit that limit, it will halt the trading. My questoin is when can I resume trading after having 2 losses? Is it after the rollover time or what? Thanks
Its the rollover time yes, consecutive loss limit is a daily limit.
Thank you
Suggestion:
Can you ad a feature, to halt trading for 'X' minutes if there is a loss. It will help trader to calm down and force them not to revenge or overtrade.
Hi, Added to the feature list!
Aviram.
Thanks
Does it work with the trade copiers as well?
Hello aseef02,
Please be aware that Risk Master was not developed to be compatible with trade copier software. Trade copiers operate using their own user interfaces, which can conflict with Risk Master's method of interacting directly with chart UI buttons. This incompatibility has led to reports of unexpected issues from some users. Therefore, we strongly advise against using Risk Master in conjunction with a trade copier for live trading due to the potential for unforeseen problems.
Thank you for your reply.
Just further reconfirming a scenario. If I only add or define one account to trade master and use it as leader in trade copier. I think this way it should not conflict as trade master only know about one account. Rest of the copying on the other accounts will be controlled by the trade copier. What do you think about it?
It might work but note that it might also have unknown issues, i haven't tested any trade copier with risk master.
for example the trade copier behind the scenes might follow the leader and if risk master exits the leaders position it might recognize that and exit all other positions as well and alongside that errors could occur..
I don't know how they developed the copiers behind the scenes that's why i advise caution, but you can try it out on sim accounts to confirm first if you'd like!
Best,
Aviram.
Thanks
I have one more issue I would like to share. In testing today, I went to optimize a couple strategies so I told NinjaTrader on the positions tab to flatten all positions. It did flatten all but one of them & I can't close it.
Hi Chloe,
Thanks for the heads up, I'll be looking into every issue and try to solve them as soon as possible.
If you could send me an email and i'll guide you on how to send me the latest log that would be great! or just activate the automatic log sending in the settings tab.
My email is aviramyagena@gmail.com.
Thanks!
That's explains a few issues I've been experiencing. If you could develop one for Bot's, I think there would be an audience that would be willing to pay...like me.
To be honest its too time consuming for me right now.. this was initially a paid service but it wasn't very successful so i decided to make it free instead of just shutting it down so hopefully it helps day traders, i don't see a future for me in niche markets like ninjatrader unfortunately.
Think of it more like a side project.
if i see in the future there's enough interest to integrate this with other things like strategies and trade copiers i might change the codebase to make sure it works with those things, but for now I'm just to busy with other things!
Aviram
I totally understand. Thank you for your open & honest feedback. You're great at what you do.....no wonder you're so busy!
Thanks for the compliment! i appreciate it ๐๐
Happy trading!
Could you also explain exactly what optimizing a couple strategies means?
do you mean automated strategies?
Risk Master was not developed to be compatible with automated strategies in mind, those use internal code that enters positions via managed/unmanaged approaches which bypass the UI buttons, although the addon is following OnOrderUpdate and OnPositionUpdate events, bypassing the UI Interception it was developed on could create unexpected issues.
Thanks for fixing!!! Especially so quickly.
No problem! i have no idea how i missed that haha, thanks for the report!
Aviram
Love it!!!! I will be buying you a bunch of coffee if my testing works. I did notice one small glitch. When you create a profile you can see the Drawdown Field. But then when go to the Profiles Tab & simply look at a Profile, the Drawdown field doesn't show.
how easy is it to work around the locks? meaning, if i set a max trade limit, hit the limit, can i remove the add on and just keep trading? or would it still be locked for the remainder of the session
Hey rwlink3z8,
Good question! And yeah, you basically hit the nail on the head.
If you remove the add-on after hitting a limit (like max trades), the limit is gone. You could then trade again in that same session.
Why? Because the add-on is the thing enforcing the rules. When you remove it, the enforcer is gone, and so are its rules. NinjaTrader itself doesn't keep that lock; the add-on does.
So why don't I just block removal? Honestly, trying to force an add-on to stay put is a bad idea. It's technically very difficult and super risky โ it could easily lead to NinjaTrader crashing, freezing, or causing all sorts of other weird bugs. Not worth the potential mess!
Think of the add-on as a tool to help you stay disciplined while it's running. It needs to be active to do its job.
Hope that makes sense!
Aviram.
thank you for replying. probably won't work for me if i can just remove it and restart ninjatrader, appreciate your work though. something like this would be really nice if it was a built in tool that couldn't be removed
I could potentially implement something like that but it would be extremely hard to predict, not sure i want to take any chances with peoples money.
Ninjatrader themselves also don't reveal internal code that's responsible for doing something like this, If they did i would do it in a heartbeat.
Hopefully you find something you can use!
Best of luck and happy trading!
Aviram.
First of all I want to say thank you for this. I hope many of us are donating to you because it really helps. I did want to ask you, I keep getting blocked for consecutive losses without taking a loss. Could I be doing something wrong?
Hi StockDrama,
![]()
I'm not sure exactly what's going on i would need to look at your logs.
Please go to C:\Users\your-username\AppData\Roaming\RiskMaster\Logs and extract the log for the day this happend, it would help if you also pinpoint the time this happened to you.
replace (your-username) with your actual username, you can directly paste this path to your explorer search bar, i've added an image below for reference:
Please send me an email at aviramyagena@gmail.com
In the future update i plan on sending logs automatically so you wont have to do that but for now this will do.
Waiting for your response!
Aviram.
Wow this is amazing. Thank you for sharing this invaluable tool. Question: for Daily Profit Target and Daily Loss Threshold, does that factor in comissions too?
Hi!
Glad you liked it, hopefully it helps you out!
to answer your question, yes it does for both. it calculates the total daily PNL (realized + unrealized)
Thank you! Another question for you: for the max loss per trade -- if you hit that, does it lock you out until the next session, or for just that trade only?
Update: I just tested it out on a sim account and it only gets you out of the current trade, which is great.
Yeah, sorry for the delay, for some reason i only just now got the message on my email.
There are daily thresholds and per trade thresholds basically.
On future updates I'll make sure to make it more understandable, but for now you could see the main page feature list if it helps.
Thanks for the coffee again!
Aviram.
I made a profile and assigned it to all accounts, all worked fine. Wanted to delete the profile from one specific account and it doesnt change. It remains active. I deleted the profile and now all the accounts still show the deleted profile as active. Its working as though the profile is still there. Seems like there is no way to remove an account status and not have a profile once a profile has been assigned. Please advise.
Hi,
Please read the instructions of features on the main page to understand everything better.
For convenience, once you assign a profile it cannot be removed from that account for the rest of the trading day, once the new trading day has started whatever is assigned into the "Tommorow's Profile" field would be the new profile.
The "Reset" and "Reset All" buttons are meant for resetting tommorow's profile only.
so to summarize, a profile assigned to an account cannot be changed for the same trading day.
also check out the new rollover feature in the settings menu, it lets you decide when the next daily reset occurs.
Best,
Aviram.
I'm testing the tool and it really works well. It's very useful and accurate. It will help me on the days when my emotions don't support me and try to betray me. I don't have many days like that, but it's better to be safe and have a tool that can prevent these days.
Thank you very much!
Hi!
I'm glad it works well for you!
happy trading and good luck!
Thanks!
First of all, thank you very much for creating such an amazing tool.
It is the best tool for complementing my weaknesses.
I wanted to test extreme situations, so I quickly pressed buy and sell as soon as I launched NinjaTrader. I discovered that in some cases, the order is executed. However, in such instances, there is no way to cancel the contract.
To address this, I would appreciate it if you could add a forced shutdown or a permanent close button as a solution.
Once again, thank you for developing such a great tool!
I sent you some coffee money for a happy day!
Hi!
Thank you for the kind words and testing out the addon.
I would appreciate it if you could send me some logs so I can take a closer look at the situation you mentioned.
Please email me at aviramyagena@gmail.com and I will instruct you further on where to get the logs from!
Best,
Aviram.
Hello I would like to know if the Daily Loss Threshold is fixed or does it follow the gain we make?
Let me explain, if I set a daily loss at 300 USD, I gain 500USD. Will my Daily loss Threshold be still at -300USD or does it moved to +200USD (500 new balance-300 daily stop)
Also referring the message below, you mentioned, you didn't do all test on tradovate but is rithmic fully operational?
Thank you
Hello afflammarenc,
Thanks for reaching out!
Please note that the daily loss threshold is independent of any gains. For example, if your daily loss threshold is set at -300 USD and you realize a gain of 500 USD, the threshold will only be activated if subsequent losses of 800 USD reduce your net account Total PNL for that day to -300 USD. Once reached, the threshold will trigger an exit of all orders and positions associated with that account and will block further trading until the next trading day.
Regarding the subsequent message, I intended to clarify that this add-on was not developed for the Tradovate browser; it was created exclusively for NinjaTrader. It will only operate on Tradovate if the user maintains an active NinjaTrader session connected to the Tradovate account. I have not tested it with Rithmic; however, if you connect your Rithmic account through NinjaTrader and trade using its (NinjaTrader's) interface, the add-on should function as intended.
What you suggest sounds to me like a drawdown or just a flat loss, not a total account daily PNL loss.
I might implement something like that in the future if it seems like something the community wants for sure!
Let me know if that's something you're interested in and i will put it in my TODO list.
Best,
Aviram
Hello.
thank you very much for the answer
If you can add it to your todo list. It would be really great
I think it would be a high value feature.
Thanks
This sounds like a great addition to the already wonderful tool, Thank you for creating this!
Thank you!
Its been added to the TODO list! follow here on itch to get updates on the program and see the dev log.
Another possibility is the messaging system in the addon itself in which i will promote the new updates in the future.
Best,
Aviram.
One more thing I noticed is when you use a hot key market entry for example it bypasses the block enters in an order and the stop loss and take profit disappears but then does not allow you to close the position. I always test on a sim but as you can imagine this could be quite bad. If you could add the block to the hot key entries that would be best but if you could add a hard close button that would also be good. As long as you can get out of a position that was in error. Thanks for all your work, and despite this still a great tool!
This also seems to be the case for hot key market buys/sells, when daily profit target is hit it deletes the ATM brackets and locks you out because the threshold was met but doesn't close the position at daily profit target. You can hit close and it will close the position but if it was a yoink down and back up you loose some of the profits and get locked out.
Hi alex
thanks for the comments.
I'll look into everything and try and find a solution for this.
I am trading with a TopStep Tradovate account. Would you know if this script would work for my setup and if not, can I pay you to configure it for that?
Alternatively, would you know if the scrips would work with a TopStep-NinjaTrader account?
Thank you,
Ed
Hi Ed,
Thanks for reaching out!
RiskMaster was specifically developed for NinjaTrader and not directly for Tradovate. I did perform some preliminary testing with Tradovate accounts connected via NinjaTrader, and the addon partially worked, though I haven't conducted extensive tests to fully confirm all functionalities.
To achieve partial compatibility, you'd need to connect your Tradovate account through NinjaTrader and make sure that Ninjatrader stays open and connected to Tradovate while trading. When you trade through Tradovate's browser interface, the data routes through NinjaTrader, allowing RiskMaster to intercept and manage trades. However, there is a limitation: because the orders don't originate directly within NinjaTrader's UI, RiskMaster can only perform checks after positions are already entered. This means if you exceed set limits (like trading more contracts than allowed), RiskMaster would immediately close your position after entry, causing you to incur entry and exit fees, although it would still enforce your set rules.
Regarding customizing the addon for Tradovate directly: I previously noted this idea as a feature request. However, my current schedule is quite full, and since this involves significant development outside NinjaTrader (or potentially intercepting orders directly within Tradovate's UI), I can't promise implementation anytime soon.
As for your second question, could you clarify what you mean by "scripts working with a TopStep NinjaTrader account"?
If you're referring to using NinjaTrader directly, then RiskMaster fully supports various account types, including TopStep, Apex, Simulation, and NinjaTrader accounts. You just need to create a RiskMaster profile and assign it to your specific account.
Feel free to ask if you have any other questions!
Best, Aviram