|
| 1 | +[var.perps_ip_market_settings] |
| 2 | +ip_perps_market_id = "10600" |
| 3 | +ip_perps_market_skew_scale = "<%= parseEther(String(3_000_000)) %>" |
| 4 | +ip_perps_market_max_funding_velocity = "<%= parseEther('36') %>" |
| 5 | +ip_perps_maker_fee_ratio = "<%= parseEther('0.000200') %>" |
| 6 | +ip_perps_taker_fee_ratio = "<%= parseEther('0.001000') %>" |
| 7 | +ip_perps_max_market_size = "<%= parseEther(String(430_000)) %>" |
| 8 | +ip_perps_max_market_value = "<%= parseEther(String(1_500_000)) %>" |
| 9 | +ip_perps_initial_margin_ratio = "<%= parseEther('3.271') %>" |
| 10 | +ip_perps_maintenance_margin_scalar = "<%= parseEther('0.391') %>" |
| 11 | +ip_perps_minimum_initial_margin_ratio = "<%= parseEther('0.2') %>" |
| 12 | +ip_perps_flag_reward_ratio_d18 = "<%= parseEther('0.0003') %>" |
| 13 | +ip_perps_max_liquidation_limit_accumulation_multiplier = "<%= parseEther('1.5') %>" |
| 14 | +ip_perps_max_seconds_in_liquidation_window = "30" |
| 15 | +ip_perps_minimum_position_margin = "<%= parseEther('15') %>" |
| 16 | +ip_perps_locked_oi_ratio = "<%= parseEther('0.1') %>" |
| 17 | +ip_perps_max_liquidation_pd = "<%= parseEther('0.0005') %>" |
| 18 | +ip_perps_endorsed_liquidator = "0x11233749514Ab8d00C0A5873DF7428b3db70030f" |
| 19 | + |
| 20 | +[invoke.createIpPerpsMarket] |
| 21 | +target = ["perpsFactory.PerpsMarketProxy"] |
| 22 | +fromCall.func = "owner" |
| 23 | +func = "createMarket" |
| 24 | +args = ["<%= settings.ip_perps_market_id %>", "Story", "IP"] |
| 25 | + |
| 26 | +[invoke.setPerpsPriceIp] |
| 27 | +target = ["perpsFactory.PerpsMarketProxy"] |
| 28 | +fromCall.func = "owner" |
| 29 | +func = "updatePriceData" |
| 30 | +args = [ |
| 31 | + "<%= settings.ip_perps_market_id %>", |
| 32 | + "<%= extras.ip_oracle_id %>", |
| 33 | + "<%= settings.strict_staleness_tolerance %>", |
| 34 | +] |
| 35 | + |
| 36 | +[invoke.addPerpsIpSettlementStrategy] |
| 37 | +target = ["perpsFactory.PerpsMarketProxy"] |
| 38 | +fromCall.func = "owner" |
| 39 | +func = "addSettlementStrategy" |
| 40 | +args = [ |
| 41 | + |
| 42 | + "<%= settings.ip_perps_market_id %>", |
| 43 | + |
| 44 | + { strategyType = "0", settlementDelay = "0", settlementWindowDuration = "1", priceVerificationContract = "0x0000000000000000000000000000000000000000", feedId = "0x0000000000000000000000000000000000000000000000000000000000000000", settlementReward = "0", disabled = false, commitmentPriceDelay = "0" }, |
| 45 | +] |
| 46 | +extra.ip_pyth_settlement_strategy.event = "SettlementStrategyAdded" |
| 47 | +extra.ip_pyth_settlement_strategy.arg = 2 |
| 48 | +[invoke.setPerpsIpSettlementStrategy] |
| 49 | +target = ["perpsFactory.PerpsMarketProxy"] |
| 50 | +fromCall.func = "owner" |
| 51 | +func = "setSettlementStrategy" |
| 52 | +args = [ |
| 53 | + "<%= settings.ip_perps_market_id %>", |
| 54 | + "<%= extras.ip_pyth_settlement_strategy %>", |
| 55 | + { strategyType = "0", settlementDelay = "<%= settings.settlement_delay %>", settlementWindowDuration = "<%= settings.settlement_window_duration %>", priceVerificationContract = "<%= imports.pyth_erc7412_wrapper.contracts.PythERC7412Wrapper.address %>", feedId = "<%= settings.pyth_feed_id_ip %>", settlementReward = "<%= settings.settlement_reward %>", disabled = false, commitmentPriceDelay = "<%= settings.commitment_price_delay %>" }, |
| 56 | +] |
| 57 | + |
| 58 | +[invoke.setPerpsIpFundingParameters] |
| 59 | +target = ["perpsFactory.PerpsMarketProxy"] |
| 60 | +fromCall.func = "owner" |
| 61 | +func = "setFundingParameters" |
| 62 | +args = [ |
| 63 | + "<%= settings.ip_perps_market_id %>", |
| 64 | + "<%= settings.ip_perps_market_skew_scale %>", |
| 65 | + "<%= settings.ip_perps_market_max_funding_velocity %>", |
| 66 | +] |
| 67 | + |
| 68 | +[invoke.setPerpsIpOrderFees] |
| 69 | +target = ["perpsFactory.PerpsMarketProxy"] |
| 70 | +fromCall.func = "owner" |
| 71 | +func = "setOrderFees" |
| 72 | +args = [ |
| 73 | + "<%= settings.ip_perps_market_id %>", |
| 74 | + "<%= settings.ip_perps_maker_fee_ratio %>", |
| 75 | + "<%= settings.ip_perps_taker_fee_ratio %>", |
| 76 | +] |
| 77 | + |
| 78 | +[invoke.setPerpsIpMaxMarketSize] |
| 79 | +target = ["perpsFactory.PerpsMarketProxy"] |
| 80 | +fromCall.func = "owner" |
| 81 | +func = "setMaxMarketSize" |
| 82 | +args = ["<%= settings.ip_perps_market_id %>", "<%= settings.ip_perps_max_market_size %>"] |
| 83 | + |
| 84 | +[invoke.setPerpsIpMaxMarketValue] |
| 85 | +target = ["perpsFactory.PerpsMarketProxy"] |
| 86 | +fromCall.func = "owner" |
| 87 | +func = "setMaxMarketValue" |
| 88 | +args = ["<%= settings.ip_perps_market_id %>", "<%= settings.ip_perps_max_market_value %>"] |
| 89 | + |
| 90 | +[invoke.setPerpsIpMaxLiquidationParameters] |
| 91 | +target = ["perpsFactory.PerpsMarketProxy"] |
| 92 | +fromCall.func = "owner" |
| 93 | +func = "setMaxLiquidationParameters" |
| 94 | +args = [ |
| 95 | + "<%= settings.ip_perps_market_id %>", |
| 96 | + "<%= settings.ip_perps_max_liquidation_limit_accumulation_multiplier %>", |
| 97 | + "<%= settings.ip_perps_max_seconds_in_liquidation_window %>", |
| 98 | + "<%= settings.ip_perps_max_liquidation_pd %>", |
| 99 | + "<%= settings.ip_perps_endorsed_liquidator %>", |
| 100 | +] |
| 101 | + |
| 102 | +[invoke.setPerpsIpLiquidationParameters] |
| 103 | +target = ["perpsFactory.PerpsMarketProxy"] |
| 104 | +fromCall.func = "owner" |
| 105 | +func = "setLiquidationParameters" |
| 106 | +args = [ |
| 107 | + "<%= settings.ip_perps_market_id %>", |
| 108 | + "<%= settings.ip_perps_initial_margin_ratio %>", |
| 109 | + "<%= settings.ip_perps_minimum_initial_margin_ratio %>", |
| 110 | + "<%= settings.ip_perps_maintenance_margin_scalar %>", |
| 111 | + "<%= settings.ip_perps_flag_reward_ratio_d18 %>", |
| 112 | + "<%= settings.ip_perps_minimum_position_margin %>", |
| 113 | +] |
| 114 | + |
| 115 | +[invoke.setPerpsIpLockedOiRatio] |
| 116 | +target = ["perpsFactory.PerpsMarketProxy"] |
| 117 | +fromCall.func = "owner" |
| 118 | +func = "setLockedOiRatio" |
| 119 | +args = ["<%= settings.ip_perps_market_id %>", "<%= settings.ip_perps_locked_oi_ratio %>"] |
0 commit comments