This workshop is becoming a victim of its success.
5/15: Post Trade Analysis
*Note: This was a paper trade implemented with the Thinkorswim trading platform.
I was watching 3-minute candles of 5 stocks on my android phone using the TC2000 app. These 5 stocks were chosen from a scan that produced 23 stocks. I am not too impressed with the scan lately, and I am going to rethink my scan design this weekend.
This image is a 3-minute candle of SHLD. The vertical line line was my entrance point with a market order filled at $3.47.
If I had set my Target at $3.61 (4%), I would have been out 12 minutes later. Alas, I had higher goals, which were not achieved. I could have also used a trailing Stop, or manually moved a Stop into the 1.4% position when I had the chance to try to lock in covering the $14 commissions. I didn’t. Instead I got busy at work, and never got out.
Opening Bell 5/16/18
These are the stocks I will be watching this morning…
Sorry, I marked my entrance on the chart but it didn’t save for some reason I don’t have the time now to figure out. This is the three minute chart of EBIO and I entered on the forth candle at $2.82.
Not the greatest entrance. I spent most of the day under. One aspect of Poor Man’s Day Trading is that, without a $25,000 account, you can only make 3 day trades in every 5 days. One option is to trade 4 times a week, but make one of those trades a 2 day trade.
So I am going to make this a 2 day trade, but since this is still an exercise, I am going to practice the the complete process as though I am not already all-in.
Still working the kinks out of the reporting process. I need to write these posts the same day of the trade. I will get better at this.
I want to make an important point. Starting with a $1000 account, averaging 1.4% per trade, 4 days a week, for one month has a return of 0% (after $14/round trip commissions). Starting with a $10,000 account and averaging 1.4% per trade, 4 days a week, for one month has a return of of 27% (after $14/round trip commissions).
|Day||Account 1||Account 2|
Today I am watching…
I signed up for a TD Ameritrade account a few days ago and downloaded the thinkorswim trading platform to both my windows laptop and my android phone. This is a pretty complicated piece of software. I have been trying out the paper trading, and I just want to describe how I traded last Friday because this is likely to be a typical trading day process.
I am preparing to begin trading low priced stocks with a $1000 account. I did my stock selection using TC2000 on my laptop, and saved a watchlist of 3 stocks –
I went to the thinkorswim platform and saved a Buy at Market order for all three of these stocks for as many shares as $1000 could get me, in 100 share blocks.
I opened the TC2000 android app on my phone Friday at the opening bell, opened the Watch 5/11 watchlist, and set my charts to 3 minute candles. I flipped back and forth through the 3 charts looking for the right opportunity.
The featured chart is GST, 3 minute candles at the Open. The dotted line is the previous Close at .80. GST gapped down and headed down for the first 3 candles, then turned upward during the fourth candle. I hit the Buy at Market order I had saved, and was filled at .74 for 1200 shares. I hit the opposite order button, and set up a bracket with a Stop Market order at .70, and a Target Limit order at .82. 20 minutes later it traded at .82, but it needed to trade at .83 to fill my paper order at .82. When it failed, I moved my Stop up to .78, and stopped out at .78 a few minutes later.
100*((.78-.74)/.74) = 5.4% (before commissions) GST ended the day at .73
I am just practicing the daily exercise at this point. There is a five stage process evolving –
- Stock Selection (Using TC2000 on my Windows Laptop)
- Trade Entrance (Using TC2000 Android and ThinkorSwim Android Apps)
- Trade Management (Using Thinkorswim Android App to set Stop and Target bracket)
- Post-Trade Analysis (Using TC2000 on my Windows Laptop
- Conclusions (Using a OneNote notebook for my trading Journal)
I think I now have all of the pieces in place to begin practicing for the real thing. I reset my thinkorswim paper trading account, and starting Monday, I will begin with $1000 and detail each trade on this blog after the Close. I think I will be able to provide a screenshot of the thinkorswim account daily trade activity, and a chart marking my trade.
- Survive: With $7/trade commissions, $14 round trip on a $1000 trade is 1.4% per trade just to break even. I am prepared to start over and over, and to spend months practicing the paper trading exercise until or if it returns results worth risking my very hard earned $1000. It is going to take me a few month to save that much anyway.
- If I can double my investment to bring my paper account over $2000, I can begin using 50% Margin, and make a $4000 trade. If I can double that $2000 account to $4000, I think I will be ready to give it a shot.
So now have Onenote, and I am using it as my writing platform instead of this blog. The adventure is ongoing, it is this blog that is intermittent. For example, the stocks I will be watching Monday at the Open are –
I am going to be looking for an entrance at or below the previous close on buying pressure. This is a tactic that deserves scrutiny. It means I miss trades that open up and roar upward. But many days that start this way, quickly crash, as though they are sucking in the longs before crashing short. Whether it is intentional or not, the physics of an up-spike before the crash amplifies the crash, relative to the up-spike volume.
A sell-off that exhausts itself, while providing an attractive entrance price on a uptrend, is a solid long drop. But if you drop too soon, the sell-off may turn into a waterfall, and over you go.
And away… This is the stock I want to be in at the previous Close haha. Seriously, this is the Day 2 we all dream about, especially if it begins with a gap up. This shit is long gone before the drop. When you see it while looking for the drop point, you missed it. Repeat after me – bye, bye. Not – Buy! Buy!
My 5 paper trades this week. I expect to continue this practice for 11 more weeks (at least). I will publish the weekly and cumulative result at the end of each week. This paper trading is preparation for the second edition of the Opening Move Workshop.
The columns are %Change Open-Close, Open-High (>=0), and Open-Low (<=0). I do not calculate from the previous Close because I do not enter on the previous Close. Rank is how the stock did compared to the other stocks in the Scan. My Scan has a Price, Volume, and Volatility test, and generally produces about 23 stocks. I choose my favorite for my next trade.
This is the exact data I need to tune my management rules. Only the stock selected each day should be used to optimize the management rules. This workshop uses a percent Stop order below the Open price. I go “all in” (approximately) with 50% Margin on every trade, so the following percentage calculations are doubled from the above table. On April 25th, DRNA hit the Target first, then the Stop.
Management Rules (“All-In,” 50% Margin, Buy on Open, Sell on Close)
- 2% Stop: 22.96%
- 1% Stop: 15.1%
- 2.5% Target, 2% Stop: 25%
- 2.5% Target, 1% Stop: 18%
I have not yet looked at the Trailing Stop Option.
This week, the 2.5% Target, 2% Stop would have taken the trade at the Target 5 days out of 5.
I set up a spreadsheet to keep a cumulative total of these 4 sets of management rules. Every trade will use the rules that would have returned the cumulative maximum of all previous trades.
10% a week doubles every 8 weeks.
10% a week on a $50,000 trading account is $5,000/week income.
Had some issues upgrading Windows, but they are resolved now and the game is back on.
This project is going to deal only with daily data. I am importing the data into Excel from a collection of text files in which each text file holds the daily data for a single symbol. The date is ordered from earliest date to latest date, and each line holds the comma-separated values of Symbol, Date, Open, High, Low, Close, and Volume.
I want to be able to add current days to the bottom of each sheet, and I want to be able to add more sheets (stocks). I am going to begin adding data by placing the first stock on Sheet 2. I add Sheet 2, and click the Data Tab on the ribbon. From the “Get and Transform Data” Section, I click on the “From Text/CSV” Option (Comma-Separated Values)
I am going to use Sheet 1 to reduce the database by deleting duplicated information. After I import the data into the workbook, I copy the symbol from each Stock Sheet into the first column of Sheet 1, on the Row that corresponds to the sheet number of the symbol. Then I copy the date column from one of the Stock Sheets and paste it into the second column on Sheet 1. Then I delete the first two columns, the symbols in column 1, and the dates in column 2, from every Stock Sheet. Then I am going to rename each Sheet Tab to the Symbol for that Stock Sheet.
If you want to follow along with this EXCEL-lent adventure, you can build an Excel database in this format. I will will be providing all of the code I create for each experiment while I develop the “workshop workbook.” At some point soon I will provide a macro to automate the creation of this database from a folder containing the text files for each symbol you are interested in.
For a lot of the types of analytical explorations I am interested in the charting programs don’t go there. Over the years I have mounted numerous data spelunking expeditions into the depths of market behavior using Excel and VBA. There are several free options available that might also work, but the Excel/VBA integration is most likely the best for this type of work, and it is the one I have experience with.
I signed up for the Microsoft 365 Personal Subscription for $6.99/month. Over the weekend I created an Excel database with 250 days of daily OHLCV data on 50 mostly random NYSE stocks.
The data is on a single sheet. In the past I have tried it with each stock having its own sheet, and reversing the order so the most recent date is at the bottom. This makes it easier to update the database on a daily basis, and the VBA code can be written in such a way that adding new rows, or new stocks, does not break the code. I will be making a database with this structure, and I will provide the macros I write and publish the results of my investigations.
Trade Management Optimization
For now, I just wanted to demonstrate a simple exploration that Excel/VBA makes possible. Trading can be broken down into two functions –
- Trade Selection
- Trade Management
Over the weekend I dusted off my programming skills by creating some macros to compare the results of trade management rules on trade outcome. Before I began the explorations, I “normalized” the price data by adding some columns to the database –
All of these numbers are percentage change.
- C-O: Close to Open the next morning. The “gap”
- C-H: Close to next day High
- C-L: Close to next day Low
- C-C: Close to Close
- O-H: Open to High (I call this the Head)
- O-L: Open to Low (I call this the Tail)
- O-C: Open to Close
Normalization of the price data allows us to compare percent changes in stocks trading at very different price levels. By looking at percent change and percent return we can calculate the value based on any investment level. A couple of reality checks –
- You cannot buy a partial share of stock. Even when you go “all in” with your trading account, you are not really all in. Most people trade in increments of 100 share blocks.
- At lower levels of investment, the trade commission has a higher percentage of cost. Trade 1 share of a $1/share stock that has a 100% gain, it cost you a 500% penalty to make that 100%. As investment level increases, the commission cost dwindles to insignificance.
Trade Management Matrix
One of the exploration I did this weekend was to discover what effect setting different Stop and Target percentages from the Open would have on the cumulative Result. Here is a piece of one of the Result Tables –
The column heading 1.5×2 represents a 1.5% Stop and a 2% Target. The percentages in the table represent the percent Return from a trading simulation that involved 248 trades in 248 days for each stock, represent by each row.
Looking at the first row, trading the stock AA Open to Close EVERY trading day for just under a year had a 26.63% return if you used a 1.5% Stop and a 2% Target, and a 52.1% return if you used a 1.5% Stop and a 4% Target.
Again, these return percentages were based on ZERO trade selection constraints. They were intended to compare management rules independent of trade selection. I will continue to blog my explorations and conclusions. I am just getting this adventure under way, and I am still working out the post structure.
Here is the price data from the first stock in the database –
AA opened on on 3/27/2017, the first day in the database, at $31.74/share. It closed on 3/22/2018, the last day in the database, at $44.92/share. If you bought it on Open 3/27/2017, and sold on Close 3/22/2018, your return would have been 35.22%
I find these differences interesting. Even more interesting was what happened when I put a simple restriction on whether or not to trade that stock that day. The number of trades went down over 50%, while the %Return went up 50%. Since you would still trade every day, choosing a stock that meets your trade selection criteria, there can be a dramatic difference.
I am downloading MS Office. While I do that, and drink a couple of beers, I want to work out where I am going to start.
My initial sample is –
- Exchange: NYSE
- Time: 250 Trading Days (1 year)
- Price: Greater than $7/share on Day 1 (3/27/2017)
- Volume: Greater than 3 million shares on Day 1
- First Sample: I took the first 50 symbols of 269 alphabetically.
Database Record –
The data is all on a single sheet so I can traverse the data with a nested loop.
For symbol = 1 to 50
For day = 1 to 250
Time Series Analysis
I actually took this class about 30 years ago. Like the other statistics and computer science classes I took at that time, I was completely focused on applying what I was learning to cracking Wall Street. Then I dropped out, wrote my first novel, and writing became my new love. Trading became my occasional mistress.
We experience reality as a time series of stimulus and response, of cause and effect. If we can crack the code, when we observe a stimulus, we can predict the response. If we guess wrong it can be hilariously funny. Or not.
Every moment influences what happens next. This is reflected in the charts. Charts can tell us the history of price movement. They can not tell us that a company will invent a new widget, that a law will be passed that benefits some and destroys others. When these events occurs, they are recorded in the charts, but the charts can not predict them. This is the limitation of technical analysis of the past for predicting the future. Sometimes future price movement is not predictable from past price movement.
I believe that other times, many times, it is predictable enough to make a living. Before we can predict the response, we must grok the stimulus.
That is where I intend to start.
I am about a third of the way through the Excel download.
I am about to launch what I hope is an extended statistical investigation of market behavior. The good news is, I am not a statistician, so the bulk of what I do should be relatively simple to understand. I have done this before, but I have never blogged the adventure before. It is not always easy to clearly explain why and how you are doing something. The effort to explain, in my experience, is usually well-spent.
I could get metaphysical here, and probably will in the Induction to the workshop manual. Very quickly, I suggest that our perceptions are controlled by our story, which is our model of how reality works. Whether we are aware of it or not, when we observe the market, we do so through preconceptions that control what we see. Those preconceptions may be ruinously inaccurate. Exposing and deleting these false preconceptions frees our trading decisions from the control of delusions. That sounds like a good thing, right? These false preconceptions, however, sometimes resist deletion…
My freshman year in high school I took a class called Introduction to Physical Science (IPS). It wasn’t like I was unfamiliar with basing decisions on evidence, or unaware that I was guessing, and that I might not survive guessing wrong. IPS helped me understand that I was not alone in this circumstance, and that there were well tested models and practices for investigating behavior. IPS taught me that verifiable experiments enabled collaboration across time and space, and that collaboration in this effort to understand the laws governing reality had allowed us to fly men to the moon and back. That is a lot of guessing right.
The workshop I hope to create would be a sort of Introduction to Market Science. I want to help students, and myself, learn how to observe market behavior, how to use statistical tools to describe the behavior we observe, how to draw inferences from the description of the behavior, and how to test those inferences without killing our trading account.
In this context, I am using the term MyMarket to describe the “sample space” of stocks I will by using to investigate the behaviour of the larger market “population.”
I am going to investigate the behavior of a sample to NYSE stocks and a sample of NASDAQ stocks separately. According to Investopedia –
The fundamental difference between the NYSE and Nasdaq is in the way securities on the exchanges are transacted between buyers and sellers. The Nasdaq is a dealer’s market, wherein market participants are not buying from and selling to one another directly but through a dealer, who, in the case of the Nasdaq, is a market maker. The NYSE is an auction market, wherein individuals are typically buying and selling between one another, and there is an auction occurring; that is, the highest bidding price will be matched with the lowest asking price.
I am going to set a minimum price of $10/share at the time the sample is chosen.
I am going to set a minimum average daily volume over the last 21 trading days of 3 million shares at the time the sample is chosen.
Initial Time Window
I am going to build my initial database with the last 120 days of historical data from the NYSE and NASDAQ samples.
I am going to build the database from Daily Data so that each record contains –
- Index (Day 1-120)
This is a pretty big Excel Database. I am doing all of this on a $100 netbook. I may need to further limit sample space restrictions to reduce the file size because of my hardware limitations.
I am backing off the daily trade exercise while I develop the statistical studies using Excel. This is the database I will start building after work today, I think. I will report on how it goes.