Welcome to NexusFi: the best trading community on the planet, with over 150,000 members Sign Up Now for Free
Genuine reviews from real traders, not fake reviews from stealth vendors
Quality education from leading professional traders
We are a friendly, helpful, and positive community
We do not tolerate rude behavior, trolling, or vendors advertising in posts
We are here to help, just let us know what you need
You'll need to register in order to view the content of the threads and start contributing to our community. It's free for basic access, or support us by becoming an Elite Member -- see if you qualify for a discount below.
-- Big Mike, Site Administrator
(If you already have an account, login at the top of the page)
Discussion of a Micro Scalping Day Trading Facility
LET'S DISCUSS GENERAL REQUIREMENTS FOR MICRO SCALPING
Many small traders would be happy if they could realize net profits
on an average Daily basis of at least $200 per day.
Now, this might not satisfy the Heavyweight traders out there, but
it would satisfy most small traders I've spoken with.
So that would be $1000 / week Net Profits on average; with a
"no surprises" type of strategy.
No surprises means that we have a fairly good slow and steady
increase in account equity; with only small bets and more Wins
than Losses. This is in contrast to traders I know who might Win
$5000 one day, and then lose $7000 the next day.
IN THIS THREAD, we're not going to actually Build such a system; but
to discuss some of the basic requirements and recommendations for
a system which could satisfy this requirement.
IF any code shows up, it will be C# code for NinjaTrader 8; but let's
be VERY CLEAR: Building even a simple system like this is a much
more significant task than building our little TradeFlowRisk Indicator
for Order Flow analysis from another thread. There, I was just able
to dump the complete code.
SO I'D LIKE TO BEGIN TO DISCUSS THE REQUIREMENTS for a system
that might be realized, of Intermediate complexity, for NT8
AND ESPECIALLY the basic technical and functional challenges that
would need to be surmounted.
SO, OVER TO YOU TO INDICATE YOUR LEVEL OF INTEREST IN THIS
DISCUSSION. IF IT'S NOT INTERESTING, BECAUSE MAYBE IT'S
NOT ACHIEVABLE OR THERE'S NO INTEREST IN MICRO-SCALPING,
THEN THE THREAD WILL JUST FIZZLE
Meanwhile, I'll attach a screenshot showing a sequence of Trades which
roughly makes $100 Net; and uses Micro Scalping to achieve that result.
A Micro Scalping system is ALWAYS trading "counter-trend".
This means that, in general, it Does Not Chase the dominant
trend, and try to "jump on the moving bus".
Rather, a Micro Scalping system Must be able to identify the
"tops" and "bottoms" of ....... wait for it !! ... Micro Trends
or fairly small Pullbacks in a Micro Trend Reversal.
So many traders understand the "sawtooth" nature of Market
movement; and most traders IGNORE those small Micro Sawtooth
movements; in favor of a longer duration Major Trend.
Obviously, in Micro Scalping; those Micro Movements would be
your "bread and butter".
In another thread, we developed an Order Flow facility, or what
I like to call Trade Flow, called TradeFlowRisk.
Now, this is a particular interest of mine; and those Concepts
will be at the Core of a Micro Scalping facility.
A couple of key variables will assist in finding Micro Tops and Bottoms:
1) Net Inventory calculations over an appropriately short period
of time.
2) Possibly, using the Risk calculations we also discussed.
3) And using Big Lot Trade Events.
WHY WOULD WE EXPECT THIS TO BE RELEVANT?
As we discussed with TradeFlowRisk, the "micro sawtooth" behavior
is due to Market Maker absorbing Retail Buying and Retail Selling,
to develop a "mini position" AGAINST the Retail Market. That means
that MM becomes relatively "Short" and "Long" as the Price swings
up and down in a single Sawtooth move; and this generates Profit
for MM which goes beyond just "Spread Profits".
Spread Profits are continuously occurring for Market Maker, since
Billy the Buyer buys at the ASK a futures contract from MM at a Price; so MM
crucially SELLs to Billy the Retail Buyer.
We can think of this, trivially, as MM becoming Short 1 contract at
the sale Price. Then, WITHOUT ANY MOVEMENT IN MARKET PRICE,
Sally the Seller, sells to the BID and let's say the Bid/Ask Spread
is 2 Ticks in Price.
Sally the Seller has just facilitated Market Maker's "cover" of the Short
contract; with a Profit of 2 Ticks times the Tick Value of the contract.
This is happening constantly, REGARDLESS of whether the Market is
moving in Price, or not.
BUT, consider that when Market Maker causes Price to "wiggle" in those
"micro sawtooths" that there is MUCH more interest among Retail
traders in participating. So when Price rises, most will Buy and when
Price falls, most (not all) will Sell.
This makes the "Sawtooth" considerably more Profitable for Market
Maker than if the Price were not moving at all. Retail players see
Opportunity, and have incentive to jump in. Of course nearly ALL of
them will LOSE in the short term; but...
...as Micro Scalpers, our aim would be to Win these Micro Trending
movements or "Sawtooths"; translating them into income.
To achieve this, we need to be Correct in our decisions, Precise in
our executions, and generally Smart enough to make many
more Wins than Losses, somehow
All traders know the admonition "Don't Over Trade".
Well, generally, a Trader needs to be Predatory, so let's
discuss what that means.
It means that you trade ONLY at those moments when
the odds are very much in your favor. And since this is
a highly technical way of trading, you are measuring those
odds, in a sense, very much in Real Time.
Predation means waiting, "keeping your powder dry"
until Opportunity appears.
In general, a Market is sitting in the middle of a Range
of Price Deflection. The Bollinger Band indicator is a great
example of this, well known to traders; and so much of
trading is identifying deflections in Price; and then a
"Reversion to the Mean" of that Price.
So, we are doing Counter Trend trading; and you might
say, well "Why not just Sell the Upper Bollinger band,
and Buy the Lower Bollinger". Thousands of traders have
tried to make money this way; precisely 0.1% have
ever succeeded in doing so.... WHY ??
CONSIDER THAT "Price does NOT predict Price". Price is
a Description of Price; but not a Prediction of Future
Price.
Now some of you are going to get really Angry and/or Resentful
at that comment by me. But it's true. Price only describes
Price, or a Price Trend or a Price Pattern.
NOW, I'd like to say right away; that certain PATTERNS of Price Action, e.g. "Head and Shoulders" type patterns, MAY
have Predictive Power.
But, in general, I'd like y'all to accept that Price alone doesn't
predict future price; e.g. Price Trend Reversal; so clearly
SOMETHING MORE THAN JUST PRICE NEEDS TO BE AVAILABLE.
That's why Volume Based Indicators, such as our "Order Flow"
TradeFlowRisk type approach and calculations; SHOULD BE
employed in addition to purely Price Based approaches.
THIS IS ESPECIALLY TRUE, when you need to identify with
High Precision, just when a Sawtooth peak or trough; is going
to be a reversal, so that you should Buy or Sell precisely
at that Price.
NOW WHEN I SAY BUY OR SELL; I'd better be clearer. I
Really mean "Offer to Sell" or "Bid to Buy" using Limit Orders
which FORCE the Market to come EVEN FURTHER to your
Price than even your Trigger Conditions would specify.
Always keep this in mind: "Many Bids and Offers are made,
but Few are Filled". THIS IS YOUR OBJECTIVE.
And this is simply taking the concept of Predatory trading
just a bit further. Even when your Conditions are all met
to STRIKE (and we'll discuss those in further posts) you
want to force the Market to come even further to your
Price before you are Willing to Trade.
Call this Extreme Predatory Tactics, if you will, but that is
what You will Require; in order to Win in Micro Scalping.
In most of what I'll discuss, U.S. futures out of
Chicago (Aurora) at the CME, for example, is the
physical location of the exchanges.
Internet communication may appear fast, and NinjaTrader
is a Desktop Application, so typically you are at a distance
from the exchange (in terms of network latencies).
From within the U.S. typically 100 milliseconds or less
is your distance from the Exchange. You can do a
ping of sites known to be in Chicago; to check this.
This is typically a "round trip" measurement.
Now, that may not seem like a lot of time; but for
Micro Scalping, the speed of communication is a big
factor.
Why is colocation or Close Location of your server
important? Well, it must:
1) receive market data, and analyze, and then
2) submit orders and manage
If you are 100 msecs ping time from the exchange;
versus 1 millisecond ping time from the exchange,
there will be much more network congestion and
delays, and the issues involved.
FIRST OF ALL, using your NinjaTrader at a Remote
Location changes how you would tend to use it.
Remote Desktop, and good network tuning, results in
a very good response time at your Remote location.
I/O due to Charting updates is an issue for any Desktop
application. Any PIXEL on the virtual screen from your
server which changes, must be transmitted to your
location.
In my personal case, my remote dedicated server is
in the city of Chicago (not directly in Aurora), but is
only a fraction of a millisecond <1 msec ping time
from the CME exchange. The cost is $200/month
with minimal support; at a high quality host with
technical support. But it is self-managed; so I do all
of the system management myself. It is a Huge
system with 6 Xeon cores; and 32 gb DDR4 memory,
so it is extremely fast.
You do not necessarily require such a high end system,
and can probably find a system just over about $100
with less memory and processor. That is likely to be
just fine. But this is something you'll want to get
accustomed to.
So we're talking about leasing a Server which is located
near the Exchange. As mentioned above, this changes
your method of usage of the application; as it is no longer
installed on your local Desktop computer; but is running
on the Server.
Types of Server. A Virtual Private Server (VPS) is typically
what traders will use, as it is Very Cheap. However, the
best thing to do is to find a Dedicated Server which you'll
use to run your NinjaTrader instance, which will ideally
host your Custom Order Entry software as a Strategy
module.
In my particular case, I can easily outstrip a VPS in capacity;
and it is NOT RELIABLE for up time. A Dedicated Server
will run for months, without needing to be restarted; and
that is very reassuring. With NinjaTrader you MUST use
Windows; so this is not a Linux solution.
As much as possible, you will NOT be "pressing a button to
BUY or SELL". INSTEAD, you will be setting conditions
on your remote Order Entry module; and then it will decide,
locally, when to strike; and will manage targets, etc.
THIS APPROACH eliminates the significance of your Remote
location, and DELEGATES the Strike based on Triggers to
your Custom Order and Analytics platform.
REMEMBER WE ARE DISCUSSING major requirements and
ideas around a Micro Scalping system; for you to consider.
So, as a more concrete example of a platform with
Multi-Criteria Triggering, attached is an image.
Here, the platform triggered on the following criteria:
1) There was a Big Lot single Trade of contract size 8,
to the BID; which was a larger Retail Seller. Market Maker
trades against the Retail players. (Circled RED DOT at
bottom of chart.
2) There was a "Long" Net Inventory meaning that Retail
Selling was dominant, and that met a criterion. (the
PURPLE line, also circled)
2a) a "Smart Entry" condition ensured that the downward
movement in Price had momentarily halted; thus enabling the Trigger.
3) On trigger, TWO limit orders to BUY were placed, the
first 1 tick BELOW the BID price; and the next one,
3 ticks BELOW the previous. These 2 filled.
4) On Fill, each Position set a Target Limit to Sell exactly
10 ticks above the Entry Buy Price for each of the
2 positions taken.
Within just a few seconds, the Price bounced back up again,
and the 2 Targets were taken.
THESE ARE MICRO CONTRACTS Nasdaq MNQ, and the Net
Profit (minus Costs) shown is a combined $7.68 .
So a fairly simple set of Criteria, which are AND-ed together,
enables the system to Strike and achieve a profitable
Micro Scalp with low risk.
To ensure a better chance that each criterion (or condition)
can overlap in time; each has an "Extended Condition" object,
which retains its True (triggered) status for a second or
two in time. Thus, we "stretch" the conditions in time slightly,
so that C1 && C2 && C3 && C4 (AND-ed together) can
all be true "simultaneously".
This example lends credence to the claim that if the Trader
is careful, and has some semi-automatic support from a Custom
Order Entry platform; that Micro Scalping can be a "slow and steady"
way to accumulate profits.
What you describing sounds to me more like high frequency trading unless I am reading you wrong. Capturing the difference between the bid and the ask in futures is virtually impossible for retail traders whether they are co-located of not. The next level of impossibility below this where you may garner more interest by people in is creating a robust scalping strategy that works on very short time frames. This to many is known as the holy grail. Commissions pretty much destroy both of these ideas however...
Don't pay much attention to me, I am mostly lurking here these days as I am committed to another project.
Thanks for the comment. No, this is not an attempt to do HFT (high frequency trading).
The usage of Limit Orders is to gain price advantage because, as
you pointed out; Costs can eat up trades.
But the result of that scalp was Net of Costs and so that money
goes into the Trader's pocket. And only 10 ticks were required,
in the MNQ.
So, this is just Micro Scalping, taking a Position Long or Short and
then liquidating it.
It just requires Precision; and some Condition Indicators which have
a Predictive relationship to Price movement.
Here, we are primarily looking at Net Inventory, and the appearance
of "Big Lots" as our reversal criteria. And also a bit of Price deflection,
as well is a good idea.
Since NinjaTrader runs on Windows; most likely you'll be
using a Windows client system as well as using Windows
Server on your server.
A great free utility WinMTR is a way of checking your network
performance by performing lots of Trace Route commands,
and then averaging them.
On the screenshot, you can see that my average "ping time"
to my dedicated server is 75 milliseconds (round trip).
I am using a Cable Internet provider; which is fairly rock solid,
and from my gaming laptop, I have a direct cable Ethernet
connection to the cable modem itself.
You can see how many "hops" across the network
are used; and you can read how to interpret MTR reports
by searching the internet.
Also, looking at a fairly fast open for the Nasdaq, we can
see my Windows Server performance, which is running
NinjaScript, and my analytics.
Here we see the CPU load on the system, with 6 processors
which are running near 4.5 ghz, on the processor rated
nomally at 3.4 ghz, so it's a bit of "over clocking"
Even though it's working hard and fast, it has a huge amount
of performance to spare; and that's what you want.