0% found this document useful (0 votes)
19 views3 pages

Python Developer Intern Assignemment

The document outlines a task for applicants to build a simplified trading bot for Binance Futures Testnet using Python, with a focus on placing market and limit orders. Key requirements include user input validation, structured code, logging, and error handling, with deliverables to be submitted via GitHub or a zip folder. Candidates are evaluated based on correctness, code quality, validation, logging, and clarity of documentation.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views3 pages

Python Developer Intern Assignemment

The document outlines a task for applicants to build a simplified trading bot for Binance Futures Testnet using Python, with a focus on placing market and limit orders. Key requirements include user input validation, structured code, logging, and error handling, with deliverables to be submitted via GitHub or a zip folder. Candidates are evaluated based on correctness, code quality, validation, logging, and clarity of documentation.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Application Task – Python Developer (Trading Bot on Binance Futures Testnet) :

Estimated time less than 60 minutes

Thanks for applying. As the first step in our hiring process, please complete the task below.
Candidates who meet the acceptance criteria will be shortlisted for an interview.​

Application Task: Build a Simplified Trading Bot (Binance Futures


Testnet)

Objective

Create a small Python application that can place orders on Binance Futures Testnet
(USDT-M) and provide a clean, reusable structure with proper logging and error handling.

Setup

1.​ Register and activate a Binance Futures Testnet account.


2.​ Generate API credentials.
3.​ Use this testnet base URL for all API interactions:​
[Link]
4.​ You may use either:
○​ python-binance library, or
○​ direct REST calls (requests/httpx)

Core Requirements (must-have)

Language: Python 3.x

Your app must:

1.​ Place Market and Limit orders on Binance Futures Testnet (USDT-M)
2.​ Support both sides: BUY and SELL
3.​ Accept and validate user input via CLI (e.g., argparse / Typer / Click):
○​ symbol (e.g., BTCUSDT)
○​ side (BUY/SELL)
○​ order type (MARKET/LIMIT)
○​ quantity
○​ price (required for LIMIT)
4.​ Print clear output:
○​ order request summary
○​ order response details (orderId, status, executedQty, avgPrice if available)
○​ success/failure message
5.​ Implement:
○​ structured code (separate client/API layer and command/CLI layer)
○​ logging of API requests, responses, and errors to a log file
○​ exception handling (invalid input, API errors, network failures)

Deliverables

Please submit:

1.​ A public GitHub repository (preferred) OR a zip folder containing:


○​ source code
○​ [Link] with:
■​ setup steps
■​ how to run examples
■​ any assumptions
○​ [Link] (or [Link])
2.​ Log files from at least:
○​ one MARKET order
○​ one LIMIT order

Bonus (optional — choose any one)

●​ Add a third order type: Stop-Limit / OCO / TWAP / Grid


●​ Add an enhanced CLI UX (menus, prompts, validation messages)
●​ Add a lightweight UI (optional)

Suggested Project Structure (optional)


trading_bot/
bot/
__init__.py
[Link] # Binance client wrapper
[Link] # order placement logic
[Link] # input validation
logging_config.py
[Link] # CLI entry point
[Link]
[Link]

Evaluation Criteria (what we grade)

●​ Correctness: places orders successfully on testnet


●​ Code quality: readability, structure, reuse
●​ Validation + error handling
●​ Logging quality (useful, not noisy)
●​ Clear README + runnable instructions

How to Apply

Email your resume + submission link (GitHub/zip) + log files to:

●​ joydip@[Link]
●​ chetan@[Link]
●​ hello@[Link]
●​ CC: sonika@[Link]

Email subject: “Junior Python Developer – Crypto Trading Bot”

If you want, I can also give you a grading rubric (0–5) and a one-page reviewer checklist
so your team can shortlist consistently.

You might also like