Skip to content

Commit 36ff4a5

Browse files
committed
update net value calc code.
1 parent dda187d commit 36ff4a5

8 files changed

+90750
-8644
lines changed

demeter/gmx/market2.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ def get_market_balance(self) -> GmxV2Balance:
119119
# print('net_value', net_value)
120120

121121
positionInfo = ReaderPositionUtils.getPositionInfo(pending_borrowing_time, position, collateralPrice, self._market_status.data, self.pool_config, self.pool)
122-
print('executionPrice', positionInfo.executionPriceResult.executionPrice, 'longPrice', pool_data.longPrice, 'shortPrice', pool_data.shortPrice, 'pnlAfterPriceImpactUsd', positionInfo.pnlAfterPriceImpactUsd, 'totalCostAmount', positionInfo.fees.totalCostAmount)
122+
# print('executionPrice', positionInfo.executionPriceResult.executionPrice, 'longPrice', pool_data.longPrice, 'shortPrice', pool_data.shortPrice, 'pnlAfterPriceImpactUsd', positionInfo.pnlAfterPriceImpactUsd, 'totalCostAmount', positionInfo.fees.totalCostAmount)
123123
net_value += Decimal(collateral_value + positionInfo.pnlAfterPriceImpactUsd - positionInfo.fees.totalCostAmount)
124124

125125
return GmxV2Balance(

samples/data/arbitrum-GmxV2-0x70d95587d40a2caf56bd97485ab3eec10bee6336-2025-07-01.minute.csv

Lines changed: 1440 additions & 1440 deletions
Large diffs are not rendered by default.

samples/data/arbitrum-GmxV2-0x70d95587d40a2caf56bd97485ab3eec10bee6336-2025-07-02.minute.csv

Lines changed: 1440 additions & 1440 deletions
Large diffs are not rendered by default.

samples/strategy-example/23_delta_hedging.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,8 @@ def on_bar(self, snapshot: Snapshot):
144144
if __name__ == "__main__":
145145
start_date = date(2023, 8, 14)
146146
end_date = date(2023, 8, 17)
147+
# start_date = date(2025, 6, 1)
148+
# end_date = date(2025, 7, 31)
147149
file_name = f"delta_hedging"
148150

149151
market_key_uni = MarketInfo("uni")

samples/strategy-example/24_delta_hedging_gmx_uni.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,9 @@ def reset_funds(self):
5757
self.last_collect_fee0 += mb.base_uncollected
5858
self.last_collect_fee1 += mb.quote_uncollected
5959
market_uni.remove_all_liquidity()
60-
for key, position in market_gmx.position_list.items():
60+
import copy
61+
position_list = copy.deepcopy(market_gmx.position_list)
62+
for key, position in position_list.items():
6163
market_gmx.decrease_position(
6264
initialCollateralToken=position.collateralToken,
6365
initialCollateralDeltaAmount=position.collateralAmount,
@@ -116,8 +118,8 @@ def on_bar(self, snapshot: Snapshot):
116118

117119

118120
if __name__ == "__main__":
119-
start_date = date(2025, 7, 1)
120-
end_date = date(2025, 7, 2)
121+
start_date = date(2025, 6, 1)
122+
end_date = date(2025, 7, 31)
121123
file_name = f"delta_hedging_gmx_uni"
122124

123125
market_key_uni = MarketInfo("uni")

samples/strategy-example/53_gmx_v2_position_tutorial.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ class GmxV2PositionStrategy(Strategy):
1515
def initialize(self):
1616
increase_trigger = AtTimeTrigger(time=datetime(2025, 7, 1, 4, 55, 0), do=self.increase)
1717
decrease_trigger = AtTimeTrigger(time=datetime(2025, 7, 2, 16, 4, 0), do=self.decrease)
18+
# increase_trigger = AtTimeTrigger(time=datetime(2025, 7, 9, 0, 43, 0), do=self.increase)
19+
# decrease_trigger = AtTimeTrigger(time=datetime(2025, 7, 21, 15, 57, 0), do=self.decrease)
1820
self.triggers.append(increase_trigger)
1921
self.triggers.append(decrease_trigger)
2022
pass
@@ -39,6 +41,26 @@ def decrease(self, snapshot: Snapshot):
3941
)
4042
pass
4143

44+
# def increase(self, snapshot: Snapshot):
45+
# gmx_market: GmxV2Market = self.markets[market_key]
46+
# result = gmx_market.increase_position(
47+
# initialCollateralToken=pool.short_token,
48+
# initialCollateralDeltaAmount=22.108676,
49+
# sizeDeltaUsd=479.94141989558835,
50+
# isLong=True
51+
# )
52+
# pass
53+
#
54+
# def decrease(self, snapshot: Snapshot):
55+
# gmx_market: GmxV2Market = self.markets[market_key]
56+
# result = gmx_market.decrease_position(
57+
# initialCollateralToken=pool.short_token,
58+
# initialCollateralDeltaAmount=21.820694,
59+
# sizeDeltaUsd=479.94141989558835,
60+
# isLong=True
61+
# )
62+
# pass
63+
4264

4365
if __name__ == "__main__":
4466
usdc = TokenInfo(name="usdc", decimal=6, address='0xaf88d065e77c8cc2239327c5edb3a432268e5831')

samples/strategy-example/delta_hedging.csv

Lines changed: 87840 additions & 5760 deletions
Large diffs are not rendered by default.
4.66 KB
Binary file not shown.

0 commit comments

Comments
 (0)