-
Notifications
You must be signed in to change notification settings - Fork 58
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Add tracking code to runtime * Add market size and market skew to * Update test asserting the event * Add MarketUpdated event. Note that for an event to be emitted from a library, it needs to be defined in two places: - The library itself, and - The interface of the contract that is using the library. * We now hit a size limit AsyncOrderModule - Creating a AsyncOrderViewModule * Dont forget to update cannon files * Add currentFundingRate and currentFundingVelocity to MarketUpdated event * Revert IAsyncOrderViewModule * Use AsyncOrderSettlementModule like spot market * Let call site emit MarketUpdated event to avoid emitting events from library
- Loading branch information
Showing
11 changed files
with
378 additions
and
209 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
42 changes: 42 additions & 0 deletions
42
markets/perps-market/contracts/interfaces/IAsyncOrderSettlementModule.sol
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
//SPDX-License-Identifier: MIT | ||
pragma solidity >=0.8.11 <0.9.0; | ||
import {SettlementStrategy} from "../storage/SettlementStrategy.sol"; | ||
|
||
interface IAsyncOrderSettlementModule { | ||
error SettlementStrategyNotFound(SettlementStrategy.Type strategyType); | ||
error OffchainLookup( | ||
address sender, | ||
string[] urls, | ||
bytes callData, | ||
bytes4 callbackFunction, | ||
bytes extraData | ||
); | ||
|
||
event OrderSettled( | ||
uint128 indexed marketId, | ||
uint128 indexed accountId, | ||
uint256 fillPrice, | ||
int256 accountPnlRealized, | ||
int128 newSize, | ||
uint256 collectedFees, | ||
uint256 settelementReward, | ||
bytes32 indexed trackingCode, | ||
address settler | ||
); | ||
|
||
// only used due to stack too deep during settlement | ||
struct SettleOrderRuntime { | ||
uint128 marketId; | ||
uint128 accountId; | ||
int128 newPositionSize; | ||
int256 pnl; | ||
uint256 pnlUint; | ||
uint256 amountToDeposit; | ||
uint256 settlementReward; | ||
bytes32 trackingCode; | ||
} | ||
|
||
function settle(uint128 marketId, uint128 accountId) external view; | ||
|
||
function settlePythOrder(bytes calldata result, bytes calldata extraData) external payable; | ||
} |
13 changes: 13 additions & 0 deletions
13
markets/perps-market/contracts/interfaces/IMarketEvents.sol
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
//SPDX-License-Identifier: MIT | ||
pragma solidity >=0.8.11 <0.9.0; | ||
|
||
interface IMarketEvents { | ||
event MarketUpdated( | ||
uint128 marketId, | ||
int256 skew, | ||
uint256 size, | ||
int256 sizeDelta, | ||
int256 currentFundingRate, | ||
int256 currentFundingVelocity | ||
); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.