Now that the SOL and LINK Perpetuals have been successfully terminated we can re-create the LINK with a different oracle. Specifically we can read prices from a contract on Ethereum that derives the prices from Uniswap pools. I propose we only re-enact the LINK market for now since the only pool available for SOL is wormhole SOL and I think we should avoid using wrapped tokens for oracle prices.
For the LINK Perp I propose we use this pool: 0xa2107fa5b38d9bbd2c461d6edf11b11a50f6b974
The risk model params for this market would allow a maximum leverage of ~75x before a position is forcefully liquidated.
VMP-32 Re-create terminated LINK Perp
{
"rationale": {
"description": "## Summary\n\nThis proposal requests to re-create the LINK/USDT Perpetual market with USDT as a settlement asset",
"title": "VMP-32a Re-create LINK/USDT Perpetual"
},
"terms": {
"newMarket": {
"changes": {
"instrument": {
"name": "LINK/USDT-Perp",
"code": "LINK/USDT-PERP",
"perpetual": {
"settlementAsset": "bf1e88d19db4b3ca0d1d5bdb73718a01686b18cf731ca26adedf3c8b83802bba",
"quoteName": "USDT",
"marginFundingFactor": "0.9",
"interestRate": "0.1095",
"clampLowerBound": "-0.0005",
"clampUpperBound": "0.0005",
"dataSourceSpecForSettlementSchedule": {
"internal": {
"timeTrigger": {
"conditions": [
{
"operator": "OPERATOR_GREATER_THAN_OR_EQUAL",
"value": "0"
}
],
"triggers": [
{
"every": "28800"
}
]
}
}
},
"dataSourceSpecForSettlementData": {
"external": {
"ethOracle": {
"address": "0x9eb2EBD260D82410592758B3091F74977E4A404c",
"abi": "[{\"inputs\":[{\"internalType\":\"contract IUniswapV3Pool\",\"name\":\"pool\",\"type\":\"address\"},{\"internalType\":\"uint32\",\"name\":\"twapInterval\",\"type\":\"uint32\"}],\"name\":\"priceFromEthPoolInUsdt\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]",
"method": "priceFromEthPoolInUsdt",
"args": [
"0xa2107fa5b38d9bbd2c461d6edf11b11a50f6b974",
300
],
"trigger": {
"timeTrigger": {
"every": "300"
}
},
"requiredConfirmations": "3",
"filters": [
{
"key": {
"name": "link.price",
"type": "TYPE_INTEGER",
"numberDecimalPlaces": "18"
},
"conditions": [
{
"operator": "OPERATOR_GREATER_THAN",
"value": "0"
}
]
}
],
"normalisers": [
{
"name": "link.price",
"expression": "$[0]"
}
]
}
}
},
"dataSourceSpecBinding": {
"settlementDataProperty": "link.price",
"settlementScheduleProperty": "vegaprotocol.builtin.timetrigger"
}
}
},
"decimalPlaces": "3",
"metadata": [
"base:LINK",
"quote:USDT",
"class:fx/crypto",
"perpetual",
"sector:oracles",
"enactment:2024-02-05T15:00:00Z"
],
"priceMonitoringParameters": {
"triggers": [
{
"horizon": "4320",
"probability": "0.9999999",
"auctionExtension": "300"
},
{
"horizon": "1440",
"probability": "0.9999999",
"auctionExtension": "180"
},
{
"horizon": "360",
"probability": "0.9999999",
"auctionExtension": "120"
}
]
},
"liquidityMonitoringParameters": {
"targetStakeParameters": {
"timeWindow": "3600",
"scalingFactor": 0.05
},
"triggeringRatio": "0.9",
"auctionExtension": "1"
},
"logNormal": {
"riskAversionParameter": 0.000001,
"tau": 0.0000032,
"params": {
"mu": 0,
"r": 0,
"sigma": 1.5
}
},
"positionDecimalPlaces": "1",
"linearSlippageFactor": "0.001",
"quadraticSlippageFactor": "0",
"liquiditySlaParameters": {
"priceRange": "0.03",
"commitmentMinTimeFraction": "0.85",
"performanceHysteresisEpochs": "1",
"slaCompetitionFactor": "0.5"
}
}
},
"closingTimestamp": 1707609600,
"enactmentTimestamp": 1707613200
}
}