Proposal to add collateral support for PDI

This post was flagged by the community and is temporarily hidden.


If this proposal would be accepted, it can really bring “fresh” users to dForce at the same time I like the general opportunity to use top-tier DeFi assets index as collateral. the good and the most promising thing I mentioned is that PDI methodology keeps on showing pretty good results from the very beginning vs other similar Defi index products. I thing implementation of PDI as collateral would be a good move for both sides.


Sounds like great!
So users can buy PDI on Uniswap, and dForce can use the chainlink to get the price of it, right?

  • What is the circulation volume of it?
  • Can users stake PDI?
  • What are the differences among PDI, DPI and DEFI5?

Hi Miku,

Minting-wise, PDI has extremely deep liquidity, given its constituent assets have a minimum of $5mn per asset. We’re in the process of moving over the swap liquidity from Bancor to Uniswap V3. RE Chainlink. Every asset we have in PDI uses chainlink. So it’s price manipulation resistant. The atomic liquidity PDI has is key. You can redeem for the underlying assets or ETH at any time.

PDI has many benefits as a collateral asset. It also has many additional features that other competitors don’t. The main benefit of PDI is the additional yield investors benefit from through our partnership with Yearn. We feel a DeFi index should benefit its holders with the yield on the underlying assets.

In the case of DPI - it just gives exposure to the prices. No yield. We have superior rebalancing through our partnership with 0x, that allows us to get the absolute best execution which in turn improves the return of the index.

In the case of DeFi5 - I don’t think it’s set up for people to use after the hack. But the Indexed set-up uses Balancer Pools. This limits the performance of the index given Balancer’s constant rebalancing and the limitation of assets. Also, no yield for investors.

Users can’t stake PDI for incentives, currently. This may change.


Does DIP have oracle support from Chainlink please? Also, can you share with us evidence of trading volume, liquidity, volatility of DIP which will be taken into account as a part of risk assessment?

Hi Mggy,

Every asset we have in PDI uses chainlink. So it’s price resistant.

The atomic liquidity PDI has is key. You can redeem for the underlying assets or ETH at any time. Currently a 500 ETH investment into PDI will suffer a mere 6% price impact. You can check this through the Phuture app

PDI is not not a new asset, PDI is the top DeFi assets by marketcap and volume. It’s also the first index to generate yield on underlying asset.

Happy to jump into questions RE the methodology which will help with the risk assessment.

Methodology -

It’s a lot more than underlying assets. How is the PDI customized and managed? Does ChainLink provide oracle for PDI itself? How is the liquidity of PDI (liquidation is very time-sensitive especially in a black swan event)?

PDI follows the set methodology. Every month PDI is rebalanced (following the methodology), this action is executed by Kee3pr network.

Each asset on PDI uses a chainlink price feed or a 1hr uni v3 twap. Currently 9 assets are priced using a chainlink feed and 1 asset is using a uni v3 twap. Each underlying asset must have a minimum of $5m of liquidity. Thus the price feed for PDI is completely manipulation resistant. See the pricing contract here:

PDI has a modest amount of liquidity on uni v3 currently, but that has no bearing on your ability to get into and out of PDI in size. You can directly mint and redeem PDI, tapping into the liquidity of the underlying assets, allowing for large transactions to to occur within low price impact. PDI can be redeemed for the underlying components or ETH or USDC. We’re working on integrating our SDK into aggregators like 0x’s Matcha and 1inch. Removing the need for users to come to our app.

It seems like use function totalEvaluation() to get the actual price, but for dForce lending protocol, you know, it uses the price of the ChainLink, so the protocol can use a common way to get price, such as getPrice(USDT), getPrice(USDC), but for PDI token, maybe need to upgrade the current contract to make compatible with way to get token price, however, I think in order to add PDI token to modify the current oracle contract is not a good idea.

This post was flagged by the community and is temporarily hidden.

There was similar proposal for index token before. I think the difficulty and risk for supporting PDI are several folds:

a. Compounded smart contract risks, at least 3 layers of smart contract risks (PDI, underlying index token, underlying yield aggregator) ;
b. execution risk (rebalancing strategies, dependency on Kee3pr, 0x etc)
c. oracle risk (compromise of any oracle feed of underlying index asset could poison the aggregated feed) and requirement to upgrade dForce’s contract also add extra risk.
d. unvested collateral exposure: the index contain assets which havn’t been vested via dForce’s risk assessment process i.e YFI, 1inch, LIDO, Bal, Sushi etc, which could expose lending pool to unvested collaterals.

1 Like

Hi Mindao - thanks for the questions.

A: PDI is created by Phuture, the protocol for which has been through 3 separate audit firms (Certik, Peckshield and Code4arena) and is live on both Ethereum and Avalanche. We’ve done everything we can to mitigate as much of the smart contract risk as possible, but obviously that risk will always remain, as it will for the majority of DeFi protocols. We utilise Yearn for yield because we see the Yearn protocol as one of the most battle tested. With a track record, team and TVL to back this up.

We have already gone through a set of rigorous checks with Bancor to get our tokens listed when we first launched and would be happy to go through any checks/verification you might have.

B: Our index methodology is publicly available for all to see on our docs section and we also post each months results on our Github (https://github(DOT)com/Phuture-Finance/rebalancing-data/tree/main/PDI). We invoke the rebalancing process through our multi sig which consists of implementing the new weights and assets for the next month. Only verified assets that meet our criteria can be parsed in, since the code checks to see if the asset has the appropriate role.

Smart contracts trustlessly create orders which are picked up by keep3r network and executed in an automated way. I see this as a major benefit as it removes the reliance of the rebalancing process on one entity. Further, we integrated with 0x to give the absolute best possible execution when rebalancing. This ensures that investors lose as little as possible to price impact/slippage which also means the price does not shift by any material amount during rebalancing. All orders executed via keepers go through several checks on the contract side, including signature verification, asset address and received quantity verification which nullifies any attempt to execute a malicious order. Even if 0x computed a bad trade our contract-based price impact require statement would trigger and revert the tx.

C: We have fully manipulation-resistant NAV pricing through this contract - https://etherscan(DOT)io/address/0x76Dd4189d73f07e7B11350CfFc9B503627fc7a3b#readContract

12 out of 13 price feeds are from Chainlink and RPL used a highly liquid, 300+ cardinality Uniswap v3 price feed.

I would assume you generally are trusting of chainlink price feeds for asset pricing else your comment would apply to any other use of chainlink feeds. However, our approach is more manipulative resistant than using a single feed since you would have to either manipulate multiple feeds or 1 feed a HUGE amount. Having 13 assets using the highest quality data feeds makes manipulating the price feeds more or less impossible. Further, our pricing contract is completely transparent so you can see exactly what we are doing to compute the price.

D: I think you mean unvetted exposure to certain assets. The Phuture DeFi Index only supports the top blue-chip assets in DeFi that have passed our stringent checks found here (docs(DOT) This includes having at least 30% of the max supply circulating, minimum of $5mm in liquidity, at least 1 year of pricing data available, robust price feed available, minimum usage levels etc. Thus I am confident that we are not supporting any assets that you would deem to have an abnormal level of risk.

Finally, we think that PDI makes for a good collateral asset because it is natively yield bearing with 5 out of its 13 assets producing a return for the index of around 2%. Thus, even if the index has no growth over a 1-year period holders will still earn the 2% baseline yield. This also helps to offset interest paid on the borrowed asset.

Have made a proposal for this, but it did not pass, for the result, please check: Support PDI | Snapshot