xWIN Finance security record

Arbitrum, BNB Chain, Polygon (POS)xwin.financeXGitHub

As of 3 Nov 2026, xWIN Finance has 2 audit reports by 1 security firm on Trustblock; the latest is by CertiK, dated 13 Jun 2023. Those reports list no open critical findings. It also holds 1 incident (latest 24 Jun 2021).

Critical findings
No open critical findings
Across the 2 reports, 2 critical findings were reported. Each is marked fixed by the firm that reported it. See the findings
Incident
Incident 24 Jun 2021
Source: De.Fi incident database. 2 audits have been published since. See the incident
Open the latest report
Your label, live
Get the label for your site

Record last updated . It holds audits, findings and contracts up to Nov 2026, and incidents up to Oct 2026. Trustblock does not review code.

Audits2

Newest first

AuditSecurity firmDateScopeCritical findingsReport
xWin Finance (Audit 2)Security firm: CertiKDate: Scope: Files named in the report2 critical findings, fixedOpen · skynet.certik.com
Xwin FinanceSecurity firm: CertiKDate: Scope: Files named in the reportNo open critical findingsOpen · skynet.certik.com

Findings91

Statuses are the security firm’s own, from each report.

SeverityOpenAcknowledgedFixed
Critical002
High617
Medium2012
Low11050
HighCentralization Related RisksxWin Finance (Audit 2) · CertiK · 13 Jun 2023Acknowledged

In the `fundV2` contract, the role `owner` has authority over the following functions: - `init()` to set parameters. - `MoveNonIndexNameToBase()` to swap any token in the pool to base currency. - `setOpenForPublic()` to set the pool to public or private. - `updateOtherProperties()` to set `rebalanceCycle`, `smallRatio` and `_UPMultiplier`. - `updateBlockPerday()` to set `blocksPerDay`. - `updatePlatformProperty()` to update `platfromWallet` and `platformFee`. - `updateManagerProperty()` to set manager, rebalancing manager, and management fees. - `updatexWinEngines()` to set the address to price master and xwin swap contracts. - `updateLockedStakingAddress()` to set `lockingAddress` - `addContractWaiveFee()` and `removeContractWaiveFee` to manage the address that can be waived for performance fees. The `RebMaager` has authority over the following functions: - `createTargetNames()` to set the distribution of assets. - `Rebalance()` to perform rebalance with new weight and reset next rebalance period - `setValidInvestor()` to set valid investors. --- In the `fundV2Factory` contract, the role `owner` has authority over the following functions: - `createFund()` to create a new fund with the given parameters. - `initialiseFund()` to initialize a fund with the given parameters. - `setSwapAddr()` to set the address for the `xWinSwap` contract. - `addNewBaseToken()` to add a new supported base token. - `removeBaseToken()` to remove a supported base token. - `updatePriceMaster()` to update the `xWinPriceMaster` contract address. - `setProperties()` to set the default properties for the funds. - `addWhiteList()` to add an address to the whitelist. - `removeWhiteList()` to remove an address from the whitelist. - `setPause()` to pause or unpause a fund. - `setAdminWallet()` to set the address for the `xWinAdminWallet`. - `setEmitEvent()` to set the address for the `xWinEmitEvent` contract. - `setAutoLock()` to set the address for the `xWinLockStaking` contract. - `setCreationFee()`: set the creation fee for new funds. --- In the `UniSwapV2TWAPOracle` contract, the role `owner` has authority over the following functions: - `addPair()` to add a new pair to the registry. - `setPeriod()` to update the period for the contract. - `renounceOwnership()` to renounce ownership of the contract. - `transferOwnership()` to transfer ownership of the contract. The ownership of these functions is controlled by the `owner` role. --- In the `xWinEmitEvent` contract, the role `executor` has authority over the following functions: - `FeeEvent()` to emit a fee collection event. - `FundEvent()` to emit a fund activity event. The role `admin` has authority over the following functions: - `setExecutor()` to add or remove executor addresses. - `setAdmin()` to add or remove admin addresses. --- In the `xWinPriceMaster` contract, the role `executor` has authority over the following functions: - `addPrice()` to add a price source for a token pair. - `addChainlinkUSDPrice()` to add a Chainlink USD price source for a token. - `setExecutor()` to add or remove an executor address. The role `owner` has authority over the following functions: - `initialize()` to initialize the contract. - `setTWAPOracle()` to set the TWAP Oracle address. - `updateStratInteractor()` to update the `stratInteractor` address. --- In the `xWinStrategy` contract, the role `owner` has authority over the following functions: - `setEmitEvent(address _addr)` to set the address of the `IxWinEmitEvent` contract. - `updateUSDAddr(address _newUSDAddr)` to update the address of the stablecoin USD. - `setPause()` to pause the contract. - `setUnPause()` to unpause the contract. --- In the `xWinStrategyWithFee` contract, the role `owner` has authority over the following functions: - `updateLockedStakingAddress()` to set the address for the Locked Staking contract. - `setPerformanceFee()` to set the performance fee rate. - `setManagerFee()` to set the manager fee rate. - `setPerformanceCollectionPeriod()` to set the period for performance collection. - `setBlockPerDay()` to set the number of blocks per day. - `setManagerWallet()` to set the wallet for the strategy manager. - `addWaiveFee()` to add an address that is exempt from performance fees. - `removeWaiveFee()` to remove an address from performance fee exemption. The role `strategyManager` can influence the following processes: - In `collectFundFee()`, the manager can collect the fund fee and receive new shares. - In `collectPerformanceFee()`, the manager can collect the performance fee if the conditions are met and receive new shares. - In `performanceWithdraw()`, the manager can receive a fee from the profit made by a withdrawal. --- In the `xWinStrategyInteractor` contract, the role `admin` has authority over the following functions: - `registerStrategyContract()` to register and activate a strategy contract. - `activateStrategy

Open the report

Incidents1

Attached through a shared contract address. Our incident data ends in Oct 2026.

Incident

Incident,

28 PancakeSwap LP tokens.

Source: De.Fi incident database.

Audits before it
0.
Audits since
2, the latest dated 13 Jun 2023.

Contracts

No deployed address is recorded for these audits.

The reports name a repository or files. Open a report to see its scope.

The repositories and files the reports name

Show this on your site

Is this your project? Show this record on your own website. The label states what the record holds, links to this page and updates by itself. It is free and needs no sign-in.

Content

Facts

Automatic: the three strongest facts of this project’s own record (its last audit and two more), highlighted. They update with the record. Picking a fact turns Automatic off.

Fixed as
Language

Style

Layout
Theme
Accent
Corners

Format

Size
Date
Embed as
HTML
<head>
<script src="https://widget.trustblock.run/project-widget.min.js" defer></script>
</head>
<body>
<div
data-tb-project-widget
data-tb-project-slug="xwin-finance"
></div>
</body>

Paste the code where the label should appear. It uses no API credit and updates by itself.

Something wrong on this page? A missing report, a wrong date, a finding that was fixed since. Tell us and we check it against its source.

Tell us