Skip to content
Keith McDonnell edited this page Sep 22, 2012 · 2 revisions

Historic data

N.B. use ASK price only for all data (ie not midpoint/bid)

http://www.nasdaq.com/quotes/nasdaq-100-stocks.aspx

for each Nasdaq 100 stock

  • fetch end of day bar for previous 3 days

calculate liquidity for each stock relative to Nasdaq 100 index

for the top 10 Nasdaq stocks by liquidity

  • fetch last 3 days 1 min bars

create a map as follows:

  • { '2012-12-12 09:30':{ 'APPL' } }

Market data

N.B. use ASK price only for all data (ie not midpoint/bid)

Subscribe to 15 second market data for NDX10 (top 10 Nasdaq stocks)

Store NDX10 data in Deque of max 4 slots (one for each 15 seconds)

When new data comes in & deque is full, remove the oldest data & notify subscriber.

Signals

New singal every 15 seconds, therefore 4 * 391 signals per day

Use random order placement distributed throughout the day. Max 250 orders per day

Position size

Use 30% of current a/c balance

Order placement

Use Limit (LMT) orders:

Entry: ASK Profit target: ASK + 0.03 Stop loss: ASK - 0.03

Order expires after 65 seconds

Order should be fire & forget, all entry & exit orders are placed at the same time.

Store execution data

Keep track of current profit/loss.

Only take 1 position per strategy; ie if orders are already live, discard current position/signal .

Clone this wiki locally