Advanced Vectorbt Backtesting Script Development
Budget: $10 – $30 USD
Freelancer Wanted: Vectorbt Backtesting Strategy Development (Multi-Position Management)
I'm looking for a freelancer experienced with Vectorbt to develop a small but powerful backtesting script. This script needs to be able to open and manage multiple independent trading positions simultaneously, with specific requirements for Stop Loss and Trailing Stop Loss.
Key Requirements:
Language: Python
Library: Vectorbt
Features to Implement:
Initial Stop Loss Calculation (calculate_sl_tp()):
ATR-based Stop Loss (default):
Activated when use_atr_for_sl_tp=True.
Long: entry_price - (atr_sl_multiplier * atr_value)
Short: entry_price + (atr_sl_multiplier * atr_value)
atr_sl_multiplier defaults to 2.0.
Fixed Percentage Stop Loss (fallback):
Applied when ATR is not available.
Long: entry_price * (1 - sl_pct)
Short: entry_price * (1 + sl_pct)
sl_pct defaults to 0.02 (2%).
Position Size Calculation:
Determine risk_amount based on current_value and risk_per_trade (e.g., 0.01 = 1%).
Calculate distance = abs(entry_price - stop_loss).
size = risk_amount / distance.
Adjust for slippage: actual_size = size * (1 - slippage).
Trailing Stop Loss Update (update_trailing_stop()):
Activated when atr_trailing_stop_enabled=True.
Activation conditions:
Position must have a minimum profit: profit >= atr_value * atr_trailing_start_multiplier.
Trailing distance: trailing_distance = atr_value * atr_trailing_multiplier.
Minimum distance: min_trailing_distance = entry_price * 0.005 (0.5%).
Update formula:
Long: new_stop = current_price - trailing_distance
Short: new_stop = current_price + trailing_distance
Only update if the new_stop is more favorable than the current Stop Loss.
Candidate Requirements:
Experienced in Python programming and possess a deep understanding of Vectorbt.
Ability to write clean, efficient, and readable code.
Preference for candidates with experience in trading system development or backtesting.
Please send demo results from similar projects, which could be in .csv files, images, or videos, for my review.
I'm looking for a freelancer experienced with Vectorbt to develop a small but powerful backtesting script. This script needs to be able to open and manage multiple independent trading positions simultaneously, with specific requirements for Stop Loss and Trailing Stop Loss.
Key Requirements:
Language: Python
Library: Vectorbt
Features to Implement:
Initial Stop Loss Calculation (calculate_sl_tp()):
ATR-based Stop Loss (default):
Activated when use_atr_for_sl_tp=True.
Long: entry_price - (atr_sl_multiplier * atr_value)
Short: entry_price + (atr_sl_multiplier * atr_value)
atr_sl_multiplier defaults to 2.0.
Fixed Percentage Stop Loss (fallback):
Applied when ATR is not available.
Long: entry_price * (1 - sl_pct)
Short: entry_price * (1 + sl_pct)
sl_pct defaults to 0.02 (2%).
Position Size Calculation:
Determine risk_amount based on current_value and risk_per_trade (e.g., 0.01 = 1%).
Calculate distance = abs(entry_price - stop_loss).
size = risk_amount / distance.
Adjust for slippage: actual_size = size * (1 - slippage).
Trailing Stop Loss Update (update_trailing_stop()):
Activated when atr_trailing_stop_enabled=True.
Activation conditions:
Position must have a minimum profit: profit >= atr_value * atr_trailing_start_multiplier.
Trailing distance: trailing_distance = atr_value * atr_trailing_multiplier.
Minimum distance: min_trailing_distance = entry_price * 0.005 (0.5%).
Update formula:
Long: new_stop = current_price - trailing_distance
Short: new_stop = current_price + trailing_distance
Only update if the new_stop is more favorable than the current Stop Loss.
Candidate Requirements:
Experienced in Python programming and possess a deep understanding of Vectorbt.
Ability to write clean, efficient, and readable code.
Preference for candidates with experience in trading system development or backtesting.
Please send demo results from similar projects, which could be in .csv files, images, or videos, for my review.