We have moved to Discord. Please click here to join us in the Trading Terminal Discord server.
These forums are read-only.
Leaderboard
Popular Content
Showing content with the highest reputation on 09/30/2018 in Posts
-
1 pointUpdated: 8/8/2019 @ 12:44pm (PST) Finally out of the alpha stage and releasing this to the community, I've been using it with success. Because I had to do some musical chairs with memory I made a configuration utility as the script itself is very ugly. This is more of a BETA release for this, so if anyone wants to try this out in SIM and let me know if you have any issues with the configuration sheet or the hotkeys themselves. It's based on the work started by @fjmocke here: https://forums.bearbulltraders.com/topic/469-das-calculate-shares-based-on-account-risk/ . What it is: It's a hotkey command script that can be used to dynamically alter the share total based on: Available Buying Power (capital) Stop Location (Risk) % Account Risk OR Fixed Dollar Amount The script includes purchase power protection and won't send an order that you can not afford, it does this by calculating two factors: A - Shares You Can Afford B - Shares at Risk Parameter (e.g. $25,000 account equity, 1% risk = $250 risk, $250 * a stop distance of .10 = 2500 shares) min{A,B} = 0.5(A + B - | A - B | ) But, why male models? I just told you. /Zoolander reference You'd use this to calculate your share total based on what you're willing to risk. So instead of blindly throwing 500 shares at every setup, you can dynamically alter risked amount based on the per-trade setup. I use it on my StreamDeck (will also release the icon packs soon) with modifiers of 100%, 75%, 50%, and 25%. 100% is the A-Plus setups I see, those I have HIGH confidence in. Alternatively, if a stock has a large spread or is low-float, I may only use the 25% modifier key for those. Instructions for Configuration: Go to this link: V2.1: DOWNLOAD ^^ Recommend latest DAS version of 5.4.3.0. Requires DAS version 5.2.0.34 or above (current BETA branch as of 11/19/2018) for the physical stop portion to work. If you don't use the physical stop, you don't have to worry about it. NOTE: Thoroughly test in SIM to make sure it's doing what you expect it to do. Choose: Download the ZIP file and unzip to where you want. On "Setup & Instructions" configure your settings. Account Leverage (default for DAS is 4), this is the margin your broker gives you. Some off-shores give 6. It needs to match what is configured in DAS for proper calculations. Max Account Risk %. This is the maximum percent of equity you're willing to risk on every trade (default is 1%). You can always risk lower (more on that later). % of Total Buying Power. If you don't want to calculate based on the total buying power of 100%, you can set this to a lower percentage (example: 100,000 buying power with 60% here equals $60,000 maximum position size) Route. LIMIT, MARKET, SMRTL. Default is LIMIT. Order Bid/Ask Offset. This is the offset you use when you send the price for order, e.g. "Ask + 0.05" (meaning fill me up to 5 cents above ask) Time in Force. Default: Day+ Default Shares. This is the amount of shares you want to set as the DEFAULT SHARES for all trades (e.g. when you click a Symbol and it loads, this is the share total). You can see why this is here in the technical breakdown section below. Minimum Stop Buffer. This is an offset to the stop distance. If you set this to 0.05, it'll add 5 cents to the stop distance calculation (so if your stop distance is 0.05, it'll be calculated on 0.10). Switch to the "Hotkeys" tab. Choose your preferred style. % Risk of Equity (Dynamic) or Fixed Price (e.g. $150 risk). %Equity Risk: Use the drop down to select what you want the value to be % equity. NOTE: This is a modifier AFTER your account risk maximum %. So if you have 1% account risk, and set this to 50%, your effective account risk is 0.005 --> 0.5%. $ Fixed: Use the drop down to select what you want the value to be for dollar risk. Select "long" or "short" to flip the script's direction. Click the cell that contains the start of the command (E column) and Ctrl + C (copy). Paste it into DAS. It should look like a sample command below. Instructions for Usage: First, you must have "Double Click to Trade" turned on in Chart, Right-Click --> Configure --> Settings --> Double-click to trade. Double click the chart where you want to set a mental stop (it does not place a stop order, you can always put one in after). Hit your configured hotkey. Sample Scripts: LONG: DefShare=BP*0.98; Share=DefShare*0.25* Price * 0.01; Price = Ask - Price + 0.02;SShare = Share / Price; Share = DefShare - SShare; DefShare = DefShare + SShare; SShare = Share; SShare = DefShare - SShare; Share = 0.5 * SShare; TogSShare; ROUTE =LIMIT; Price = Ask + 0.05; TIF=DAY+; BUY=Send; DefShare = 500; SHORT: DefShare=BP*0.98; Share=DefShare*0.25* Price * 0.01; Price = Price - Bid + 0.02;SShare = Share / Price; Share = DefShare - SShare; DefShare = DefShare + SShare; SShare = Share; SShare = DefShare - SShare; Share = 0.5 * SShare; TogSShare; ROUTE =LIMIT; Price = Bid - 0.05; TIF=DAY+; SELL=Send; DefShare = 500; Technical Breakdown: DAS has basic scripting. Montage commands have access to very few read/write variables, basic operations, and only operators of addition, subtraction, division, and multiplication. To do this calculation we need additional operators (min function, and absolute function) and more memory for storage of variables. This command gets around these limitations by using user-writeable areas of memory in the program. Since DAS is written in the C++ language (from what I can tell), it's strict on what can be done in these existing memory locations. The hotkey uses the following items (plus the usual Price -- FLOAT): (Assumptions on Datatypes) DefShare -- INT (Used as a temporary variable for storage) SShare -- Unsigned INT (Behaves like an Unsigned INT in certain situations. Used as a temporary variable for storage) Share -- INT (Used as a temporary variable for storage) With the 3 INT variables, objects are moved around in memory so that we can calculate and compare with our variable limitation (be much easier if we could assign our own). To facilitate the ABS() function, we use a trick --> When a negative value is placed into an Unsigned INT it loses it's sign (thus, it becomes a POSITIVE value in memory). A more detailed technical breakdown (step by step) is located in the Configuration spreadsheet up above. Future Enhancements: If need be, I can make a step-by-step video of this entire process. I have a version that uses an AutoHotKey macro to drop a line at the stop location, I can upload that as well if people want it. ^^ Update, I discontinued this as it was too cumbersome. You had to have two sets of hotkeys for each command. I may someday revisit it if I can build out a configuration tool for it. TLDR: It does the math for you so you can risk a known amount (% or $) based on your per-trade risk position (stop distance). And yes, I'm a bit of a tech nerd. Also, longest post .. ever. Would not read again, 0/5 stars. --- KNOWN ISSUES: %Account Risk gets smaller and smaller when subsequent open positions Reason: No Equity variable, we reverse calculate equity using Buying Power. On subsequent positions, the % (e.g. 1%) calculation will be based on the available buying power and NOT the account equity. Workaround: Precalculate the %risk and use it for the $risk versions. So 1% of $25,000 equity equals $250. SSR rejection on LONG position when scaling out; rejection message (e.g. "Short marketable limit order disable due to SSR!") if using the automatic STOP trigger. Reason: DAS calculates that the position will drop below the open stop order position and reject as this can cause the position to "flip" if it was triggered. Workaround: Have a hotkey to clear the open orders (CXL ALLSYMB), clear it, scale the position (e.g. 25%). Either replace the stop or switch to a mental stop. Alternatively, you can add "CXL ALLSYMB;" to the front of the scale-out hotkeys. You just have to be cognizant to replace the stop order. Equated position size if very small (e.g. 4 or 5 shares when expected is hundreds). Reason: Wrong side was used for the order. E.g. a long hotkey is used when trying to go short. -or- Stop Distance was calculated to be a negative value (clicked too close to current price). Workaround: Be cognizant of the hotkeys used and the stop distance clicked. Clicking too close (a really tight stop) can be very dangerous if you do it inadvertently. TriggerOrder for automatic STOP placement not being sent (no stop order placed). Reason: Montage is not set to a style that doesn't allow TriggerOrder input. Styles not compatible are: Default [DAS's, if you changed it], Basic, OCO, Option, Full Fix: Use a style that is compatible, they are: Stop Order, Detail, Trigger -- I recommended using the "Stop Order" montage style. To change this, right click the montage area around where you'd enter a price and select Style --> Your Choice. --- UPDATES: 10/17/2018 - Added v.1.1 link, you'd need to use the new version to change anything. - General cleanup of the script. Added instructions for the IB issue (discussed in this thread) - NEW FEATURE: Added a new section to the Hotkeys sheet, it will now create a set up for Dynamic Scale-In hotkey commands. You'd use these by setting a scale value (say you want an additional 50% of your current position size). The hotkey will calculate the maximum share you can afford (how much you can afford at the moment) and the scale value, choosing to take the least amount. So if your current position is 1500 shares (@ $50.00) and you want to scale in at 50% your current position, it'd check if you can afford an additional 750 shares, if you can't, it'll buy the maximum you can afford. For this example, you can't afford it (if Buying Power is 100k), so it'd buy roughly $25k worth (500 shares). - CLEANUP: Cleaned up the $Dollar Risk version and removed unnecessary steps. Don't really need to replace yours if they exist, but worth noting. 10/30/2018 - Added @Michael P's suggested fixes for Excel. Configuration tool should now work in both Sheets and Excel. - NOTICE: This was a configuration tool change, no changes were made to the hotkey scripts, so no need to change any existing hotkeys. 11/19/2018 - Shortened some of the commands so we don't hit any hotkey character limit, makes them less readable, but shorter. Couldn't get them low enough to fit the montage buttons though (although removing the portions for the buying power rejection protection would likely do it). - Added a section for SELL/COVER buttons for people who just need to create those. E.g. "Sell 25% position" or "Sell 33% position". - Added @Robert H's stop suggestion. New fields on the setup page for enabling physical stops. If enabled, it'll place a MARKET or LIMIT (settings included) trigger order to go into the market once the initial order is fulfilled, these are placed at the location you double-clicked on the chart. 11/20/2018 - Added a stop-order setting to set an additional buffer for the stop price (for those that want to include or exclude the double-clicked price). - Added conditional formatting to subdue the stop settings that aren't required if you disable sending a physical stop into the market. 12/10/2018 - Added a known issues section to this post and the spreadsheet (for when a new version goes up). 12/12/2018 - Updated known issues section to include the "Montage Style" issue for TriggerOrders. 12/13/2018 - Updated to new version 1.46. Fixed a bug in the Trigger Order script which could cause it to not be interpreted by DAS's command parser on certain user settings. - Added "modifier" extra hotkeys. See instructions next to these on how to use them. - - - Set Stop to Breakeven - Long or Short - Stop Limit or Stop Market (cancels any pending orders for SYMB) - - - Set Stop to Breakeven - Bidirectional - Stop Market (cancels any pending orders for SYMB) - - - Stop - Update Price - Long or Short - Stop Limit or Stop Market (cancels pending orders, double click chart where you want stop before firing hotkey) - - - Stop - Update Price - Bidirectional - Stop Market (cancels pending orders, double click chart where you want stop before firing hotkey) - - - Stop - Update Position - Long or Short - Stop Limit or Stop Market - Replace (requires you double-click the original stop in the Orders window) - - - Stop - Update Position - Bidirectional - Stop Market Orders Only - Replace (requires you double-click the original stop in the Orders window). 8/8/2019 - New version 2.0, download the .zip file and unzip it. - Fixed an issue with some hotkey configurations that may have caused them to be inaccurate in vary rare situations. Recommend recreating your hotkeys in this new version, just to be sure. - Added Profit Target hotkeys. - Added % Scale-In Hotkeys - Added $ Risk Scale-In Hotkeys - Added Short-SSR to Long/Short dropdown for SSR hotkeys (DAS Simulator) - Added Range Order hotkeys - Added Y-Margin Scale Increase hotkey, Y-Margin Decrease, and Y-Margin Reset - Added new sheet "Example - Equity%" and "Example - $Risk" to give a more workflow outlook on what is happening. - Included a ScaleOut worksheet to manually simulate what different scale percentages / scenarios look like (instructions will be in the video). ALSO: Video is done and rendering, I think it comes in at 45minutes with 3.4gigs (4k), so it'll need to be optimized before I upload it to YouTube. Will try to do it today and will update this when done. 9/10/2019 - New version 2.1 released. Just general clean up (UI) and bug fixes. - FIXED: Issue with the Scale-In $Risk hotkeys. - FIXED: Issue with the Stop Update Price long and short hotkeys> ^^ If you use either of those, please regenerate them and replace in your DAS to avoid issues. UPDATES: The majority of this side project is completed and besides a few requests I have in with DAS developers to optimize a few things, out of any major bugs or improved scripting features, I'd say this is about done. I'll provide any edge-case support as need, but I want to move on to other BBT-community projects. So what do I have cookin' for you guys, gals, and cat? You'll see a glimpse in the video of an early prototype (buggy! I programmed that in a few hours, so bugs are expected) of a DAS calculator side program. The newer version (need to finish the UI) will incorporate a lot more in ways of tools for you, including automatically calculating changes without a hotkey intervention. It also allows you to mass-process trade log .csv files you may have exported and compile it into Excel or .CSV for import into other programs. Configuration is drag/drop friendly, so rearranging your columns is as easy as click and holding. I'm also going to shift my attention to finishing my ORB-strategy research. Right now, my datapool encompasses 15000 news article, gaplists for 2011-2019, and 1second data for stocks in that range. It's a data store of roughly 80 gigs. The idea is to test for hidden signals we may not see that can indicate a potential direction of an ORB strategy (if no rare outside influence occurs, like a terrorist attack) by leveraging a consortium of machine learning algorithms to give us a higher probability of success for each day. Depending how the research works out, the end product would likely be a probability predictor for each day. I'll share the research results with the community and may incorporate some other tests as well. VIDEO: Ok, so I may have gone down an editing rabbit hole and that took longer than expected. The videos are up, came in quite long so I chunked it down. Sorry it's a tad scattered and not one-linear cohesive unit, but I tried to mark it up as best as possible. Part 1 - Config / Math - https://youtu.be/YrRrydwGyRY Part 2 - Setup, Quick Examples, Tips - https://youtu.be/pXLlWF7T6hw Part 3 - Sim Trade Example - https://youtu.be/SO9UhJh4dTc Bonus 1 - Scale/Price Excel Calc - https://youtu.be/KTr_iJ2p0TU Bonus Tips - https://youtu.be/sNHXFMoia7A
-
1 pointHello Guys, I posted a new recap for friday the 28th of September on youtube. Let's exchange some knowledge!
-
1 pointHey guys. I just wanted to put together a little document on what I have been doing to learn the /ES. This isn’t exclusive to futures, this is for ALL trading and for those looking to give themselves the edge and to take their trading to the next level. This document is for beginners as well as jaded traders such as myself. The point here is you need to adjust how you view the market and change your thought processes. Recording Trades This may seem like a no-brainer, but not many people do this. I didn’t realize the power of recording the market until I started doing it. There are plenty of free programs out there (I use Open Broadcaster Software, OBS: https://www.obsproject.com). Since I am only trading 1 instrument, I just need to record my primary monitor. If you are trading equities and use several monitors to trade from, this may become a bit of a challenge. However, you should really only try to focus on 1 stock as it is anyways. In this case, you can record the screen that you are trading from. The other option is, just record 1 screen and ONLY trade from that screen. I also highly recommend that you record the entire day’s action, even if it’s just 1 stock that may die in the middle of the day. The reason for this will become clear in the next section. But the point here is that you NEED to be recording what you are doing, because in the heat of the moment, you don’t always know what is happening, but the recordings can help you with that. Reviewing your Trades If you record your trades, like I mentioned above, then you absolutely need to spend time reviewing your trades. I know many people here simply copy and paste their trades into their journals, put in a little blurb about what they saw happen, then never go back or care to look at it again. While this is good in practice, unless you are actually reviewing your trades in depth (and you are able to remember what was happening and going through your head at that time), there’s really no value to the journaling; you need to review! This is where the recordings come in. I mentioned in the chat that I record the entire day then I go back in the evening and re-watch everything. While this may seem a bit extreme, this is the only way you can improve your skills. Why? Well think about it this way, in the heat of the moment while the market is open and you are trying to trade, do you think you are really seeing every possibility? Are you seeing the probable outcomes of your trade? Probably not! Furthermore, you are under the “gun” so to speak of getting in at the right spot, managing the trade and exiting with a profit or a loss. This all happens at lightning speed and sometimes, you don’t even have a second to think about what is happening. When you re-watch the recordings in the evening, you are more relaxed and you can observe A LOT more of what is happening in the market/with your trade than you can while it is happening in real-time. Even doing your journal review at the end of the day, you are still a little stressed from the day and may not remember/see everything that you thought you remembered or saw. This is especially true for a really bad day. You do not need 6 and a half hours at night to literally re-watch what you already saw earlier in the day. Instead, scrub through the recording (this means taking the time scroller and moving it to different sections of the video) and find important points in the market action. Areas of major support/resistance, technical levels, VWAP, moving averages and most importantly, reversals. If you focus on these areas exclusively, you can start to see what is happening at these key spots and learn what to look for. Also, do not do this right after the market closes. You need a few hours to decompress after 4PM EST. If you jump right back into it, your mind is still going to be fried and you will be missing out on key points, so take a break and do this after dinner and before bed if you can. The recordings allow you to calmly review the market action, what you did right and what you did wrong and learn from what you are seeing, which leads me to my next piece. Taking Notes Of course, we all went to school at some point in our lives and had to take notes on what the teacher or professor was telling us. Or, we read several textbooks and took notes on that. Trading is no different. We are in school essentially trying to learn a rather subjective subject with about a million variables going on at every microsecond. But, there is a lot of information in all of this noise and by taking proper notes, you will be able to find small pieces of information that can help you gain your edge. Now, taking notes, trying to trade and also watching the market is literally impossible. Some people use dictation software and speak into a microphone that records their statements either into a document or just a voice recorder. This is an incredible process! I tried it but the dictation software didn’t understand me and since I hate the sound of my own voice, re-listening to myself is impossible (yes this is petty, but something about my high-pitched nasally voice drives me batty). However, if you have a pen and paper available and you can quickly jot down a quick note, even if it’s an important price level where you saw a large order get executed, will still be very helpful. However, what I am getting at here is if you do the recordings like I mentioned above, then you will have a much easier time taking notes when the market is closed, you are relaxed and you can focus a bit better on the action. You would be amazed as to how much information is out there when you are able to sit back, relax and just watch and take simple notes of what is happening. However, I have found an even better way of note taking for trading which is in the next section. Asking the right questions Everybody learns at different paces and via different styles. One way of learning that I felt has been dramatically helpful for me is simply asking a question then finding the answer to it. While we can read books, watch videos and listen to others talk about their trading, until you truly understand the “why” or the “how” you are just blindly following somebody else around and this will get you into trouble. When you are unable to look at the market from a purely objective perspective, then you cannot understand what is actually happening. I’ll get into this more in the next section, but it’s important to discuss here. If you come up with questions about things you are seeing or things you are not understanding, then you will be forcing yourself to find the answers to those questions and forcibly build your knowledge. Because now, you are seeking the answer instead of being told simply “look for this”. Well, “how do I look for this, why do I look for this?”. Here’s an example: “Do value areas and High-Volume Nodes (HVN’s) on the DOM (Depth of market) provide entries and price targets?” This is a question I wrote down on my notepad and I am working on answering. Another question you can ask yourself is “How strong is the VWAP in AAPL? Does AAPL respect its VWAP?” Or, “What happens when a large order is executed on Level 2? Does price retrace then try to retest that price again? Is price being held down by a large player”? It is then your job to find the answers to these questions. You won’t find the answers in one day or in one recording, but now you have something to work with. Just sitting at your screen, watching the live market or even a recording without any direction or guidance isn’t going to help you. I know because I spent 4 years doing this. Sitting at the screen and trying to make sense of what is going on with all of this noise. Well, by not having questions to answer and trying to seek the truth or answers within the noise, I just sat there and wasted my time getting lost in all of the noise of the market. Get a pad and a pen, write down your questions then watch the market live and most importantly, watch the recordings and find those answers. Once you find the answers to your questions, watch how your trading changes. Charting your own path (pun-intended) I mentioned above that most of us like to follow something blindly, especially in such a complicated environment as the markets. But you need to learn to think for yourself and think objectively. As humans, we need structure. It’s how our brains work, it’s how we live our lives – with structure (and lots of it). We are logical beings and we need “rules” in order to function properly. Everything in our lives has structure and a set of rules. Driving, working, sleeping even eating. There is structure and rules in place for everything in our lives. Trading is no different. So, we seek out ways to find rules that say “If a then b”. Well, I hate to break it to you but most rules don’t work. The market isn’t about absolutes. Far from it. There are millions of people in the market place (as well as machines) all making decisions based on their subjective point of view of what they “think” will happen. Sure, some people do have rules and I am not saying you shouldn’t have any rules – quite the contrary, but you need to understand that just because you have a horizontal line on your chart from a higher-time frame doesn’t mean that price is going to touch it to the penny (or tick) and bounce off of it. This happens, but usually, you have larger players that know that all retail traders are looking at that level and most people have stops there. So, the large players will throw a bunch of money at that zone to break it and trigger the stops, then take the money from the stops getting hit and push price back down and even further lower. Well guess what your “rules” told you… “let’s go long when price breaks this level”. Guess what just happened? Johnny Stock at Goldman just pushed price through the level, trapped you (and millions of others) into a failed trade, then sold it faster than cold water on a hot day, just to get a better price. This happens all the time. This is why you need to answer QUESTIONS rather than have rigid rules that tell you A=B. Because that’s not how this works. Yes, rules for stop losses and profit targets are critical and you can be somewhat rigid on those, but just understand that you need to think for yourself in this and develop your own way of viewing the market. Having somebody like Andrew at your disposal is critical because while I encourage you to answer your own questions by putting in the time watching the recordings, Andrew can absolutely help you in getting the answer a little bit faster and even assist you in finding that answer. And it’s not just Andrew, anybody here in our wonderful community can answer your questions. We are all here to help one another out and to work together. I implore you to come up with some questions (only after you have watched the markets long enough and watched some recordings) and find the answers to those questions. Everybody is different and the questions and answers you have may not work for me, but that’s quite ok. We are all here to build knowledge on the market and to most importantly, learn for ourselves and develop our own style of trading. While it is impossible to master the market (anybody who says they have is full of themselves), we can certainly take advantage of certain imbalances. If you think you mastered the market, you have a rude awakening coming because the market is impossible to master and will put you right back in your place. But put in the time and effort, and you will be rewarded. Do not look at trading as a way to get rich quick or start making tons of money, because you will just lose tons of money with this mindset (I know from personal experience). Treat the market like it’s a school and a game that you need to learn the strategies of. Approach it like this and follow what I said above and you will reach success IN TIME.
-
1 pointIn the video "How to think like a professional trader" series, Mark Douglas mentions this book as the first on trading Psychology: The Investor's Quotient: The Psychology of Successful Investing in Commodities & Stocks. I haven´t read the book but for Mark comments, book description and reviews I´m going to take a loot at it soon. In this blog you will find an extensive review of the book...
