Skip to content

Commit

Permalink
latest
Browse files Browse the repository at this point in the history
  • Loading branch information
quantfreedom committed Jul 11, 2024
1 parent 11bdbcc commit 24fe4c1
Show file tree
Hide file tree
Showing 8 changed files with 89 additions and 357 deletions.
19 changes: 9 additions & 10 deletions gen_ref_pages.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,6 @@

parts = tuple(module_path.parts)

# if parts[-1] == "__init__":
# parts = parts[:-1]
# init_module = data[parts[1:]] if len(parts) > 1 else data
# if not init_module.has_docstring:
# continue
# elif not data[parts[1:]].has_docstrings:
# continue

if parts[-1] == "__init__":
# We're currently handling an __init__.py file.
# Remove "__init__" suffix for accessing Griffe object in data.
Expand All @@ -45,10 +37,17 @@
# - it has a module docstring
# - or any of its members has a docstring
# (attributes, functions, classes, but not modules or objects imported from other modules)

has_docstrings = init_module.has_docstring or any(
member.has_docstrings for member in init_module.members.values()
member.has_docstrings
for member in init_module.members.values()
if not (member.is_alias or member.is_module)
)
)
# has_docstrings = init_module.has_docstring or any(
# member.has_docstrings
# for member in init_module.members.values()
# if not (member.is_alias or member.is_module)
# )
else:
# If it's another module, simply use `has_docstrings` as a non-init module cannot have submodules anyway.
has_docstrings = data[parts[1:]].has_docstrings
Expand Down
13 changes: 9 additions & 4 deletions quantfreedom/backtesters/bt_grid.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
from logging import getLogger

from quantfreedom.core.enums import (
CurrentFootprintCandleTuple,
DecreasePosition,
FootprintCandlesTuple,
OrderStatus,
Expand Down Expand Up @@ -107,7 +106,9 @@ def grid_backtest(
realized_pnl,
) = grid_order_handler.calculate_decrease_position(
cur_datetime=candles.candle_open_datetimes[bar_index],
exit_fee=grid_order_handler.market_fee_pct,
exit_price=dp.exit_price,
exit_size_asset=abs(grid_order_handler.position_size_asset),
equity=grid_order_handler.equity,
order_status=dp.order_status,
pnl_exec=pnl_exec,
Expand Down Expand Up @@ -144,7 +145,7 @@ def grid_backtest(
get_bankruptcy_price_exec = GridLevExecLong.long_get_bankruptcy_price_exec
get_liq_price_exec = GridLevExecLong.long_get_liq_price_exec

average_entry = grid_order_handler.calculate_increase_position(
average_entry = grid_order_handler.calculate_average_entry(
order_size=order_size,
entry_price=buy_order,
)
Expand All @@ -162,6 +163,8 @@ def grid_backtest(
) = grid_order_handler.calculate_decrease_position(
cur_datetime=candles.candle_open_datetimes[bar_index],
exit_price=buy_order,
exit_fee=grid_order_handler.limit_fee_pct,
exit_size_asset=abs(position_size) / average_entry,
equity=equity,
order_status=OrderStatus.TakeProfitFilled,
pnl_exec=GridDPExecShort.short_pnl_exec,
Expand All @@ -182,6 +185,8 @@ def grid_backtest(
) = grid_order_handler.calculate_decrease_position(
cur_datetime=candles.candle_open_datetimes[bar_index],
exit_price=buy_order,
exit_fee=grid_order_handler.limit_fee_pct,
exit_size_asset=order_size / average_entry,
equity=equity,
order_status=OrderStatus.TakeProfitFilled,
pnl_exec=GridDPExecShort.short_pnl_exec,
Expand All @@ -200,8 +205,8 @@ def grid_backtest(
og_available_balance=avaliable_balance,
og_cash_borrowed=cash_borrowed,
og_cash_used=cash_used,
position_size_asset=average_entry / position_size,
position_size_usd=position_size,
position_size_asset=abs(position_size) / average_entry,
position_size_usd=abs(position_size),
)

grid_order_handler.fill_or_entry(
Expand Down
Loading

0 comments on commit 24fe4c1

Please sign in to comment.