Changelog
- All parameter updates (borrowing/funding) which require the current pair price are no longer done using the request/callback pattern but using signed prices from the oracles directly, in a single transaction
- Triggering orders (SL/TP/LIQ/LIMIT_OPEN/STOP_OPEN) is now also possible using signed pair prices in a single transaction (previous request/callback pattern still exists as backup)
- This both saves gas (5 less transactions) and decreases execution time
- Signed pair prices are validated, stored temporarily in storage, and cleaned up at the end of the transaction so the storage gas costs are refunded
- Refactored aggregator answer validation (OHLC values) and median/outliers filtering into separate helpers, re-used for signed prices validation (exact same logic as in
fulfill) - Updated
SL_LIQ_BUFFER_Pto5%, from10% - Refactored
_limitSlDistanceto account for open and close fees, now min isliqThreshold - 2 * totalPositionSizeP * leverage - SL_LIQ_BUFFER_P. - Updated
withinExposureLimitsto allow skew improvements even when skew is above max, uses newwithinSkewLimitshelper.
