diff --git a/public/_strategies/raindex/1-auction-dca/auction-dca.rain b/public/_strategies/raindex/1-auction-dca/auction-dca.rain index 49142add..2edb5f1e 100644 --- a/public/_strategies/raindex/1-auction-dca/auction-dca.rain +++ b/public/_strategies/raindex/1-auction-dca/auction-dca.rain @@ -180,6 +180,14 @@ tokens: network: polygon address: 0x3c59798620e5fEC0Ae6dF1A19c6454094572Ab92 decimals: 18 + polygon-usdce: + network: polygon + address: 0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174 + decimals: 6 + polygon-gfi: + network: polygon + address: 0x874e178A2f3f3F9d34db862453Cd756E7eAb0381 + decimals: 18 polygon-ioen: network: polygon address: 0xd0e9c8f5Fae381459cf07Ec506C1d2896E8b5df6 @@ -368,6 +376,20 @@ orders: - token: polygon-mnw outputs: - token: polygon-usdc + polygon-gfi-usdce: + orderbook: polygon + network: polygon + inputs: + - token: polygon-gfi + outputs: + - token: polygon-usdce + polygon-usdce-gfi: + orderbook: polygon + network: polygon + inputs: + - token: polygon-usdce + outputs: + - token: polygon-gfi polygon-usdc-ioen: orderbook: polygon network: polygon @@ -472,6 +494,12 @@ deployments: polygon-usdc-mnw: order: polygon-usdc-mnw scenario: polygon + polygon-gfi-usdce: + order: polygon-gfi-usdce + scenario: polygon + polygon-usdce-gfi: + order: polygon-usdce-gfi + scenario: polygon polygon-ioen-usdc: order: polygon-ioen-usdc scenario: polygon @@ -1403,6 +1431,238 @@ gui: description: > The initial MNW per USDC to kickoff the first auction (e.g. 2.2). min: 0.01 + + - deployment: polygon-usdce-gfi + name: Sell GFI for USDC.e on Polygon. + description: > + DCA GFI for USDC.e on Polygon. + deposits: + - token: polygon-gfi + min: 0 + presets: + - 0 + - 10000 + - 20000 + - 100000 + - 200000 + fields: + - binding: time-per-amount-epoch + name: Budget period (in seconds) + description: > + The budget is spent over this time period. + + For example, if the budget is daily then this is 86400 seconds (24 * 60 * 60). + min: 1 + presets: + - name: Per minute (60) + value: 60 + - name: Per hour (3600) + value: 3600 + - name: Per day (86400) + value: 86400 + - name: Per week (604800) + value: 604800 + - name: Per 30 days (2592000) + value: 2592000 + - name: Per 365 days (31536000) + value: 31536000 + - binding: amount-per-epoch + name: Budget (GFI per period) + description: > + The amount of GFI to spend each budget period. + + For example, if the budget is daily and this is 1000 then 1000 GFI will be sold for USDC.e each day. + min: 0 + - binding: max-trade-amount + name: Maximum trade size (GFI) + description: > + The maximum amount of GFI to sell in a single auction. + min: 0 + - binding: min-trade-amount + name: Minimum trade size (GFI) + description: > + The minimum amount of GFI to sell in a single auction. + min: 0 + - binding: time-per-trade-epoch + name: Auction period (in seconds) + description: > + The auction period is the time between each auction price halvening. + min: 600 + presets: + - name: Every 20 minutes (1200) + value: 1200 + - name: Every 30 minutes (1800) + value: 1800 + - name: Every hour (3600) + value: 3600 + - name: Every 2 hours (7200) + value: 7200 + - name: Every 3 hours (10800) + value: 10800 + - name: Every 6 hours (21600) + value: 21600 + - name: Every 12 hours (43200) + value: 43200 + - name: Every 24 hours (86400) + value: 86400 + - binding: baseline + name: Baseline USDC.e per GFI + description: > + The absolute minimum amount of USDC.e per GFI that the auction will trade at (e.g. 0.001). + min: 0 + - binding: next-trade-multiplier + name: Auction start multiplier + description: > + The multiplier to apply to the last trade to kick off the next auction. + min: 1.01 + presets: + - name: 1.01x + value: 1.01 + - name: 1.02x + value: 1.02 + - name: 1.05x + value: 1.05 + - name: 1.1x + value: 1.1 + - binding: next-trade-baseline-multiplier + name: Auction end multiplier + description: > + The multiplier to apply to the last trade to set the baseline for the next auction. + min: 0 + presets: + - name: Disabled (0) + value: 0 + - name: 0.7x + value: 0.7 + - name: 0.8x + value: 0.8 + - name: 0.9x + value: 0.9 + - name: 0.95x + value: 0.95 + - name: 0.99x + value: 0.99 + - binding: initial-io + name: Kickoff USDC.e per GFI + description: > + The initial USDC.e per GFI to kickoff the first auction (e.g. 0.003). + min: 0 + + - deployment: polygon-gfi-usdce + name: Buy GFI with USDCe on Polygon. + description: > + DCA USDCe for GFI on Polygon. + deposits: + - token: polygon-usdce + min: 0 + presets: + - 0 + - 100 + - 1000 + - 5000 + - 10000 + fields: + - binding: time-per-amount-epoch + name: Budget period (in seconds) + description: > + The budget is spent over this time period. + + For example, if the budget is daily then this is 86400 seconds (24 * 60 * 60). + min: 1 + presets: + - name: Per minute (60) + value: 60 + - name: Per hour (3600) + value: 3600 + - name: Per day (86400) + value: 86400 + - name: Per week (604800) + value: 604800 + - name: Per 30 days (2592000) + value: 2592000 + - name: Per 365 days (31536000) + value: 31536000 + - binding: amount-per-epoch + name: Budget (USDCe per period) + description: > + The amount of USDCe to spend each budget period. + + For example, if the budget is daily and this is 100 then 100 USDCe will be sold for GFI each day. + min: 0 + - binding: max-trade-amount + name: Maximum trade size (USDCe) + description: > + The maximum amount of USDCe to sell in a single auction. + min: 0 + - binding: min-trade-amount + name: Minimum trade size (USDCe) + description: > + The minimum amount of USDCe to sell in a single auction. + min: 0 + - binding: time-per-trade-epoch + name: Auction period (in seconds) + description: > + The auction period is the time between each auction price halvening. + min: 600 + presets: + - name: Every 20 minutes (1200) + value: 1200 + - name: Every 30 minutes (1800) + value: 1800 + - name: Every hour (3600) + value: 3600 + - name: Every 2 hours (7200) + value: 7200 + - name: Every 3 hours (10800) + value: 10800 + - name: Every 6 hours (21600) + value: 21600 + - name: Every 12 hours (43200) + value: 43200 + - name: Every 24 hours (86400) + value: 86400 + - binding: baseline + name: Baseline GFI per USDCe + description: > + The absolute minimum amount of GFI per USDCe that the auction will trade at (e.g. 250). + min: 0 + - binding: next-trade-multiplier + name: Auction start multiplier + description: > + The multiplier to apply to the last trade to kick off the next auction. + min: 1.01 + presets: + - name: 1.01x + value: 1.01 + - name: 1.02x + value: 1.02 + - name: 1.05x + value: 1.05 + - name: 1.1x + value: 1.1 + - binding: next-trade-baseline-multiplier + name: Auction end multiplier + description: > + The multiplier to apply to the last trade to set the baseline for the next auction. + min: 0 + presets: + - name: Disabled (0) + value: 0 + - name: 0.7x + value: 0.7 + - name: 0.8x + value: 0.8 + - name: 0.9x + value: 0.9 + - name: 0.95x + value: 0.95 + - name: 0.99x + value: 0.99 + - binding: initial-io + name: Kickoff GFI per USDCe + description: > + The initial GFI per USDCe to kickoff the first auction (e.g. 250). + min: 0 - deployment: polygon-usdc-ioen name: Sell IOEN for USDC on Polygon. diff --git a/public/_strategies/raindex/2-dynamic-spread/dynamic-spread.rain b/public/_strategies/raindex/2-dynamic-spread/dynamic-spread.rain index cbf83f63..ffda80c3 100644 --- a/public/_strategies/raindex/2-dynamic-spread/dynamic-spread.rain +++ b/public/_strategies/raindex/2-dynamic-spread/dynamic-spread.rain @@ -478,6 +478,99 @@ gui: - 10000 - 20000 + - deployment: polygon-usdce-gfi + name: USDCe<>GFI on Polygon. + description: Rotate USDCe and GFI on Polygon. + + fields: + - binding: is-fast-exit + name: Fast exit? + description: If enabled, the strategy will attempt to exit any position it builds up in a single trade, as soon as it can do so profitably. + presets: + - name: Yes + value: 1 + - name: No + value: 0 + - binding: initial-io + name: Initial price (USDCe per GFI) + description: The rough USD price you see for GFI on Dextools (e.g. 0.0038). + min: 0 + - binding: next-trade-multiplier + name: Next trade multiplier + description: This is the most the strategy will move the price in a single trade. Larger numbers will capture larger price jumps but trade less often, smaller numbers will trade more often but be less defensive against large price jumps in the market. + min: 1 + presets: + - name: 1.01x + value: 1.01 + - name: 1.02x + value: 1.02 + - name: 1.05x + value: 1.05 + - binding: cost-basis-multiplier + name: Cost basis multiplier + description: The minimum spread applied to the breakeven in addition to the auction. This is applied in both directions so 1.01x would be a 2% total spread. + min: 1 + presets: + - name: 1 (auction spread only) + value: 1 + - name: 1.0005x (0.1% total) + value: 1.0005 + - name: 1.001x (0.2% total) + value: 1.001 + - name: 1.0025x (0.5% total) + value: 1.0025 + - name: 1.005x (1% total) + value: 1.005 + - binding: time-per-epoch + name: Time per halving (seconds) + description: The amount of time (in seconds) between halvings of the price and the amount offered during each auction, relative to their baselines. + min: 600 + presets: + - name: 1 hour (3600) + value: 3600 + - name: 2 hours (7200) + value: 7200 + - name: 4 hours (14400) + value: 14400 + - name: 8 hours (28800) + value: 28800 + - binding: max-amount + name: Maximum amount per auction (USDCe) + description: The maximum amount of USDCe that will be offered in a single auction. + min: 0 + presets: + - value: 10 + - value: 20 + - value: 50 + - value: 100 + - value: 200 + - binding: min-amount + name: Minimum amount per auction (USDCe) + description: The minimum amount of USDCe that will be offered in a single auction. + min: 0 + presets: + - value: 10 + - value: 20 + + deposits: + - token: polygon-usdce + min: 0 + presets: + - 0 + - 100 + - 500 + - 1000 + - 5000 + - 10000 + - token: polygon-gfi + min: 0 + presets: + - 0 + - 10000 + - 50000 + - 100000 + - 200000 + - deployment: base-usdc-weth name: USDC<>WETH on Base. @@ -2377,6 +2470,12 @@ scenarios: amount-token: 0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359 initial-output-token: 0x3c59798620e5fEC0Ae6dF1A19c6454094572Ab92 initial-input-token: 0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359 + usdce-gfi: + runs: 1 + bindings: + amount-token: 0x2791bca1f2de4661ed88a30c99a7a9449aa84174 + initial-output-token: 0x874e178a2f3f3f9d34db862453cd756e7eab0381 + initial-input-token: 0x2791bca1f2de4661ed88a30c99a7a9449aa84174 bsc: orderbook: bsc runs: 1 @@ -2612,10 +2711,18 @@ tokens: network: polygon address: 0x3c59798620e5fEC0Ae6dF1A19c6454094572Ab92 decimals: 18 + polygon-gfi: + network: polygon + address: 0x874e178a2f3f3f9d34db862453cd756e7eab0381 + decimals: 18 polygon-usdc: network: polygon address: 0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359 decimals: 6 + polygon-usdce: + network: polygon + address: 0x2791bca1f2de4661ed88a30c99a7a9449aa84174 + decimals: 6 bsc-tft: network: bsc address: 0x8f0FB159380176D324542b3a7933F0C2Fd0c2bbf @@ -2811,6 +2918,15 @@ orders: outputs: - token: polygon-usdc - token: polygon-mnw + polygon-usdce-gfi: + network: polygon + orderbook: polygon + inputs: + - token: polygon-usdce + - token: polygon-gfi + outputs: + - token: polygon-usdce + - token: polygon-gfi bsc-tft-busd: network: bsc orderbook: bsc @@ -2918,6 +3034,9 @@ deployments: polygon-usdc-mnw: order: polygon-usdc-mnw scenario: polygon.usdc-mnw + polygon-usdce-gfi: + order: polygon-usdce-gfi + scenario: polygon.usdce-gfi bsc-tft-busd: order: bsc-tft-busd scenario: bsc.tft-busd