Nifty 50 Algo-Trading Implementation
Budget / Salary₹1,500–12,500
TypeFreelance project
LocationRemote
Posted1 hour ago
Project Description — NIFTY 50 F&O Stock Options: 09:15 CE/PE Imbalance & Tick-by-Tick Monitoring Engine
I am looking for an experienced algo-trading developer to implement a real-time CE/PE Imbalance Strategy for NIFTY 50 F&O individual stocks.
The strategy is based on two distinct stages:
1. 09:14:50 Reference Capture
For each NIFTY 50 F&O stock, determine the ATM strike at approximately 09:14:50 AM and create a fixed strike-level reference map. The minimum reference framework is ATM−10 CE and ATM+10 PE, with sufficient intermediate strikes stored so that the system can continue functioning correctly when the ATM shifts during the day.
The reference must be stored against the actual strike, not merely against its ATM-relative position. The original 09:14:50 reference must never be overwritten when ATM changes.
2. 09:15 First Positive Tick Entry
Immediately after 09:15 AM, the system must monitor the selected CE and PE instruments tick by tick.
The first qualifying positive tick:
Current LTP > Previous LTP
determines the initial direction.
First CE positive tick → CE signal/entry
First PE positive tick → PE signal/entry
This initial entry must be extremely fast. It must not wait for CE_SUM, PE_SUM, Directional Strength, VWAP, OI, volume, 5-second confirmation, or any other secondary indicator.
3. Continuous Tick-by-Tick Monitoring
After the initial entry, the strategy must continue with continuous, live, tick-by-tick monitoring. There must be no 5-second or 1-minute polling dependency.
The current ATM of each stock must be tracked dynamically.
The active calculation basket will always be:
CE: ATM, ATM−1, ATM−2, ATM−3
PE: ATM, ATM+1, ATM+2, ATM+3
For every active strike, calculate its change from its own fixed 09:14:50 reference.
Because these are individual stock options and option premiums are affected by price movement, theta, IV and changing moneyness, the day-long strength calculation should use a normalized percentage change, rather than simply using raw rupee LTP differences.
Percentage Change = (Current LTP − Reference LTP) / Reference LTP × 100
Then calculate:
CE_SUM = Sum of normalized changes of current ATM, ATM−1, ATM−2 and ATM−3 CE
PE_SUM = Sum of normalized changes of current ATM, ATM+1, ATM+2 and ATM+3 PE
The system must correctly remap the current ATM±3 basket whenever the stock's ATM shifts, while continuing to use the original reference LTP for each actual strike.
4. Directional Strength
For dashboard/analysis purposes:
Directional Strength = CE_SUM − PE_SUM
Positive = CE-side dominance
Negative = PE-side dominance
However, this calculation must not delay the initial 09:15 entry.
5. Position Management / Reversal
After the initial CE or PE entry, continuously monitor CE_SUM and PE_SUM. When the configured opposite-side reversal condition is met:
CE position → Exit CE → Enter PE
or
PE position → Exit PE → Enter CE
The reversal threshold must be configurable.
6. Technical Expectations
The solution should be:
WebSocket/event-driven
Low latency
Tick-by-tick
Robust against duplicate/stale/out-of-order ticks
Capable of handling multiple NIFTY 50 F&O stocks simultaneously
Capable of dynamic ATM/strike mapping
Properly state-managed to prevent duplicate orders
Fully logged and auditable
Suitable for paper trading first and subsequent live deployment
I am looking for an experienced algo-trading developer to implement a real-time CE/PE Imbalance Strategy for NIFTY 50 F&O individual stocks.
The strategy is based on two distinct stages:
1. 09:14:50 Reference Capture
For each NIFTY 50 F&O stock, determine the ATM strike at approximately 09:14:50 AM and create a fixed strike-level reference map. The minimum reference framework is ATM−10 CE and ATM+10 PE, with sufficient intermediate strikes stored so that the system can continue functioning correctly when the ATM shifts during the day.
The reference must be stored against the actual strike, not merely against its ATM-relative position. The original 09:14:50 reference must never be overwritten when ATM changes.
2. 09:15 First Positive Tick Entry
Immediately after 09:15 AM, the system must monitor the selected CE and PE instruments tick by tick.
The first qualifying positive tick:
Current LTP > Previous LTP
determines the initial direction.
First CE positive tick → CE signal/entry
First PE positive tick → PE signal/entry
This initial entry must be extremely fast. It must not wait for CE_SUM, PE_SUM, Directional Strength, VWAP, OI, volume, 5-second confirmation, or any other secondary indicator.
3. Continuous Tick-by-Tick Monitoring
After the initial entry, the strategy must continue with continuous, live, tick-by-tick monitoring. There must be no 5-second or 1-minute polling dependency.
The current ATM of each stock must be tracked dynamically.
The active calculation basket will always be:
CE: ATM, ATM−1, ATM−2, ATM−3
PE: ATM, ATM+1, ATM+2, ATM+3
For every active strike, calculate its change from its own fixed 09:14:50 reference.
Because these are individual stock options and option premiums are affected by price movement, theta, IV and changing moneyness, the day-long strength calculation should use a normalized percentage change, rather than simply using raw rupee LTP differences.
Percentage Change = (Current LTP − Reference LTP) / Reference LTP × 100
Then calculate:
CE_SUM = Sum of normalized changes of current ATM, ATM−1, ATM−2 and ATM−3 CE
PE_SUM = Sum of normalized changes of current ATM, ATM+1, ATM+2 and ATM+3 PE
The system must correctly remap the current ATM±3 basket whenever the stock's ATM shifts, while continuing to use the original reference LTP for each actual strike.
4. Directional Strength
For dashboard/analysis purposes:
Directional Strength = CE_SUM − PE_SUM
Positive = CE-side dominance
Negative = PE-side dominance
However, this calculation must not delay the initial 09:15 entry.
5. Position Management / Reversal
After the initial CE or PE entry, continuously monitor CE_SUM and PE_SUM. When the configured opposite-side reversal condition is met:
CE position → Exit CE → Enter PE
or
PE position → Exit PE → Enter CE
The reversal threshold must be configurable.
6. Technical Expectations
The solution should be:
WebSocket/event-driven
Low latency
Tick-by-tick
Robust against duplicate/stale/out-of-order ticks
Capable of handling multiple NIFTY 50 F&O stocks simultaneously
Capable of dynamic ATM/strike mapping
Properly state-managed to prevent duplicate orders
Fully logged and auditable
Suitable for paper trading first and subsequent live deployment
Apply on Freelancer →
Project sourced from Freelancer.com. Applications happen directly on the original platform — we never collect your data.