Files
papers/lux-credit-lending/sections/06-risk-management-framework.tex
zeekay 4a753bb639 papers: reorganize into per-paper dirs, add Antje Worring as co-author
Restructured from flat .tex/.pdf files into per-paper subdirectories.
Added Antje Worring as co-author on all papers.
Synced PDFs to pdfs/ for download site.
2026-04-18 21:50:07 -07:00

59 lines
1.7 KiB
TeX

\section{Risk Management Framework}
\subsection{Zero Liquidation Achievement}
Since launch in December 2023, Lux Credit has maintained zero liquidations through:
\begin{enumerate}
\item \textbf{Conservative LTV}: Start at 85\%, max 90\%
\item \textbf{Yield Buffer}: 11\% APY exceeds debt growth
\item \textbf{Dynamic Monitoring}: Real-time health factor tracking
\item \textbf{Emergency Reserves}: 10\% protocol-owned buffer
\item \textbf{Grace Periods}: 30-day warning before liquidation
\end{enumerate}
\subsection{Health Factor Calculation}
\begin{lstlisting}[language=Solidity, basicstyle=\small\ttfamily]
function calculateHealthFactor(
bytes32 loanId
) public view returns (uint256) {
Loan memory loan = loans[loanId];
// Current collateral value in USD
uint256 collateralValue = getOraclePrice(loan.asset)
* loan.collateralAmount
/ 1e18;
// Outstanding debt in USD
uint256 debtValue = loan.debtAmount;
// Accumulated yield reduces debt
uint256 yieldGenerated = calculateYield(loanId);
debtValue -= min(yieldGenerated, debtValue);
// Health factor = collateral / debt
uint256 healthFactor = (collateralValue * 1e18) / debtValue;
// Safe if > 1.11 (90% LTV)
return healthFactor;
}
\end{lstlisting}
\subsection{Risk Tiers}
\begin{table}[h]
\centering
\begin{tabular}{@{}lrrr@{}}
\toprule
\textbf{Health Factor} & \textbf{Status} & \textbf{Action} & \textbf{Users} \\ \midrule
> 1.25 & Safe & None & 87\% \\
1.15 - 1.25 & Caution & Email warning & 11\% \\
1.05 - 1.15 & At Risk & Add collateral prompt & 2\% \\
< 1.05 & Critical & Liquidation notice & 0\% \\ \bottomrule
\end{tabular}
\caption{Health factor distribution (Q3 2024)}
\end{table}