Need to develop automated trading solution using Zerodha API with PHP. Please go through below detailed requirements and feel free to reach me on chat, if you need more details.
• Login to Zerodha
• Place Bracket Orders
• Exit Positions
• Status updates on Telegram bot
1. Login to Zerodha Account at a defined time, generate access token and store it in database for next course of action for the day.
2. Page to manage "Primary Settings" (check attachments)
3. Page to manage "Trade Settings" (check attachments)
4. Page to manage "Stock Settings" (check attachments)
5. Manage = Add + Edit + Delete, would be great if I can just upload the csv files at one shot to update/replace all settings
6. Create a bot (1) in my telegram account and push proper error message whenever it encounters
7. Create a bot (2) in my telegram account and push status updates for; Login Status, Advaced Orders Placed, Opening Orders Places, M2M by strategy at frequency set, M2M hit Stop Loss with net loss incurred, M2M hit Target Profit with net profit, final status of positions at 2:55 PM
8. Create a bot (3) in my telegram account and push end of day net M2M by Strategy and Funds available in account
9. Log every details and events in mysql database (option to disable once the program is running successfully, should be able to re enabled if any error occurs in future)
10. Access to PHP shall be restricted by login id and password
11. Do not blot the program, reduce the latency/lag to as minimum as possible.
12. Fetch strategy wise settings from "Trade Settings"
13. Schedule to run the program by Strategy defined in “Trade Settings”
14. Fetch the list of stocks “StockSettings” for scheduled strategy where Date column = Daily or Current Date
15. Fetch OHLC for the stocks listed (above step)
16. Check for list of stocks where Open Price = Today High and Open Price = Today Low
17. Shortlist stocks based on % change (stocks whose % change is greater than defined % and less than defined %), if total shortlisted stocks are greater than “Max_Positions” defined in Trade settings, sort the list by absolute % change (ASC Order) to short list again.
18. Divide capital to selected stocks
19. Place Bracket Order with entry price, stop loss and target profit, trailing stop loss
a. BUY if Open Price = Today Low : Entry Price = Today High + Trigger_Price_Addon
b. SELL if Open Price = Today High : Entry Price = Today Low - Trigger_Price_Addon
20. Exit all stocks by strategy at defined time or if any of the pre defined conditions met.
21. Check M2M by strategy (net profit or net loss of open positions), exit all positions (including pending) by strategy if M2M is >= target profit or <= stop loss (ex. if M2M <= -1000 rs or M2M >= 2000 rs exit \positions)
22. When exit command is triggered based on Trade Settings, Exiting positions shall happen in two phases
a. Phase 1: update bracket orders exit price to current market price (iteration 1)
b. Phase 2: if the positions does not close per iteration 1, force exit positions.
23. Stop checking once all open/pending positions by strategy are closed
Final Clean up:
24. Check and force exit all open positions and pending orders every 5 minutes starting 2:55 PM to 3:15 PM, this shall execute each time independently and not in loop, to ensure if there is any error to close the positions at first time, it should try to close them on next run
• Primary Settings (like credentials and overall settings)
• Trade Settings (at strategy level)
• Stocks Entry (at scrip level)
Skills Required: PHP, MySQL, Telegram Bot, Proficiency in using Zerodha KITE API
6 freelancers are bidding on average ₹13454 for this job
Hello I have been developing algo trading platforms and modules from many years. I have worked with zerodha API and upstox. Please check [login to view URL] which we have recently developed. Regards