The notes below denote that you are restricted to a certain amount of the Market's volume:
When an order isn't filled because of insufficient volume, it remains open to be filled in the next minute. This continues until the order is filled, cancelled, or the end of the day is reached when all orders are cancelled. Slippage must be defined in the initialize method. It has no effect if defined elsewhere in your algorithm. If you do not specify a slippage method, slippage defaults to VolumeShareSlippage(volume_limit=0.025, price_impact=0.1) (you can take up to 2.5% of a minute's trade volume).
Let's say we are at bar 1
There are 300,000 traders who want to buy stock from company ABC
The first trade places a buy order for 10,000 shares, and prior to his trade, there is no volume.
If this platform is basing my ability to buy based on a percentage of the volume, assume all 300,000 traders were Quantopian algorithms, would anyone be able to get filled?
It may sound like a stupid question, but if I can only buy based upon 2.5% of the minutes trading volume. Then the slippage model is saying that I can't buy unless someone else buys or sells? Doesn't my demand to buy create a desire for selling at the current price? Isn't this what market makers do? Isn't this a Chicken and Egg scenario? Shouldn't my buys be based on Company ABC's outstanding shares with respect to their demand and the brokers will to sell shares to anything with a pulse? Maybe, I'm not understanding. So, someone who is an an expert level, please explain this paradox.