# What is SingularityDAO?

SingularityDAO is a decentralised Portfolio Management Protocol designed to enable anybody to safely and easily manage crypto assets, supported by superior risk management and analytics tools; smart money, on-chain. A non-custodial protocol to foster a new ecosystem of Digital Asset Managers to offer automated trading strategies leveraging AI-enchanted data analytics services.

SingularityDAO is building a new ecosystem of digital asset managers who can leverage the protocol to offer automated asset management (Dynamic, Yield, Index, Exotics, etc.). By providing access to advanced decentralised tools and on-chain execution, the protocol is enabling a new generation of digital asset managers to offer their services to a wider audience. The open and inclusive approach is fostering collaboration and innovation in the crypto asset management space.&#x20;

SingularityDAO is a community-driven project, and the protocol labs welcome feedback and suggestions from its users. The growing community of supporters and users is an invaluable resource, and the team is committed to fostering open and transparent communication. Join the community to stay up-to-date on the latest developments and participate in shaping the future of the protocol.

You will find in this Gitbook space detailed information about the protocol and its features, as well as tutorials and guides to help users get started. The team is continuously updating and expanding the protocol documentation to ensure that it remains a valuable resource for the community.


# Useful Links

<img src="/files/ZokQNwfgFsQ4KcMMtOPZ" alt="" data-size="line"> dApp: [https://app.singularitydao.ai/ ](<https://app.singularitydao.ai/ >)

<img src="/files/jS4J8F9MRByZZEFZCKTn" alt="" data-size="line"> Discord: <https://discord.gg/SingularityDAO>&#x20;

<img src="/files/f9zcZI81RsGHqiiOJO1Z" alt="" data-size="line"> Telegram Community: [Telegram Community](https://t.me/chatsight_bot?start=dmVyaWZ5OjotMTAwMTI4NzAxNjEzNw==)

<img src="/files/f9zcZI81RsGHqiiOJO1Z" alt="" data-size="line"> Telegram Announcements Channel: [Telegram Announcements](https://t.me/sdaoann?mc_cid=90331ef027\&mc_eid=UNIQID)

<img src="/files/X8QC9WV3P3vXcGCkzPJI" alt="" data-size="line"> Twitter: [https://twitter.com/singularityDAO ](<https://twitter.com/singularityDAO >)

<img src="/files/kuKLZE8SVFYXXVP1I1J2" alt="" data-size="line"> YouTube: <https://www.youtube.com/c/SingularityDAO>

<img src="/files/0pNAFgnLnkGJNwywyCvj" alt="" data-size="line"> Medium: <https://medium.com/singularitydao>

<img src="/files/YwhMwwPnOH9c2BGlMpY8" alt="" data-size="line"> Instagram: [https://www.instagram.com/singularitydao](https://www.instagram.com/singularitydao/?mc_cid=90331ef027\&mc_eid=UNIQID)

<img src="/files/Zzy9ZeiJhwIY0udf9bzM" alt="" data-size="line"> Facebook: [https://www.facebook.com/SingularityDAO](https://www.facebook.com/SingularityDAO?mc_cid=90331ef027\&mc_eid=UNIQID)

<img src="/files/p8jLJMcCIwfDFeo03RFO" alt="" data-size="line"> Reddit: [https://www.reddit.com/r/SingularityDAO](https://www.reddit.com/r/SingularityDAO/)

[TELEGRAM ADMINS - DON'T GET SCAMMED - ADMINS WILL NEVER DM YOU FIRST](/security/telegram-admins)


# Launchpad

A Comprehensive Incubation and Launch Platform

The [SingularityDAO Launchpad](https://www.singularitydao.ai/launchpad) is a comprehensive platform designed for the incubation and launch of blockchain projects. It provides end-to-end services, assisting projects from the early stages of development through to post-launch, encompassing a wide array of support services including finance, legal, HR, and marketing. This approach positions the Launchpad not just as a stepping stone for project launches but as a nurturing ground for long-term project sustainability and success in the DeFi sector.

#### Incubation and Post-Launch Services

The Launchpad's services span various domains, including finance, legal, HR, and marketing. From general bookkeeping to financial modeling, and from talent acquisition to legal advisory, SingularityDAO's Launchpad encompasses all aspects of project growth and sustainability.

Post-launch, the support extends to include management accounting, payroll, transactions mapping, and much more, ensuring the projects remain robust and compliant in the ever-evolving DeFi landscape.

## Launch History

#### Key Launches

SingularityDAO Launchpad has a history of successful launches, marked by rapid fund-raising and significant user engagement:

* **NuNet (NTX):** Launched on 26th November 2021, raised $2M in just 2 minutes.
* **Rejuve.AI (RJV):** On 16th March 2023, raised $900k, sold out within 2 minutes.
* **HyperCycle (HYPC):** Launched on 8th May 2023, raised $1M, achieving a 20.9x all-time-high.
* **Cogito Protocol (CGV):** Raised $1M on 2nd June 2023, sold out in minutes.
* **SophiaVerse (SOPH):** Raised $857,500 on 25th July 2023, sold out quickly.

Each of these projects not only reached their fundraising goals swiftly but also demonstrated the Launchpad's efficiency and effectiveness in engaging a wide user base.

## What Sets Us Apart

#### Unique Approach

The SingularityDAO Launchpad differentiates itself through its expansive range of services and a focus on quality over quantity. This approach ensures that each project receives tailored support and guidance, significantly enhancing its chances of success in the market.

#### Comprehensive Support

Unlike typical launchpads, SingularityDAO's Launchpad offers a full spectrum of services, including but not limited to, strategic planning, compliance assistance, KYC/KYB management, and post-launch financial and legal support. This extensive support system positions the Launchpad as a leader in nurturing and scaling DeFi projects.

#### Focus on Quality and Community

The selection process for projects is meticulous, prioritizing quality and alignment with the SingularityDAO community's values. This emphasis on quality ensures that the Launchpad hosts projects with substantial potential and relevance to the evolving needs of the DeFi space.


# FAQ


# DynaSets

A DynaSet is a user-shared vault that leverages the strategy tightened to it to maximize the portfolio returns. The initial version's main strategy is rebalancing the portfolio assets, but in the coming months, it will be able to utilize yield optimization strategies, interactions with 3rd party protocols, and more.

There are for now two sections relative to DynaSets:

* [**Dynamic**](https://singularitydao.ai/dynasets/): Dynamically managed set of assets automatically rebalanced by the Dynamic Asset Manager via AI-based signals and algorithms.
* [**DynaLab**](https://singularitydao.ai/dynalab/): This is the home of the newest protocol features, where users can take part in the Beta testing of the latest products. They are not to be considered final products and might evolve over time. Please make sure to read the specifications of each Beta DynaSet and our T\&Cs before depositing any tokens.

The SingularityDAO protocol currently has 3 DynaSets:

* <img src="/files/IH5nJpqUg1TtAF2ckhAb" alt="" data-size="line"> [**dynBTC**](https://singularitydao.ai/dynasets/dynBTC):This DynaSet gives you exposure to Bitcoin using long-only strategies managed by the Dynamic Asset Manager with fewer fees & expenses.
* <img src="/files/nRBDEunCYGc7ukwLFsTj" alt="" data-size="line"> [**dynETH**](https://singularitydao.ai/dynasets/dynETH): This DynaSet gives you exposure to Ethereum using long-only strategies managed by the Dynamic Asset Manager with fewer fees & expenses.
* <img src="/files/juAbU9W5txqoQxA9ewhx" alt="" data-size="line"> [**dynDYDX**](https://singularitydao.ai/dynalab/dynDYDX): An innovative **Beta** DynaSet where the DAM can use dYdX derivative solutions to hedge, short, and apply leverage to the market.

  \ <br>


# Why DynaSets

### Advanced AI

DynaSets are bringing sophisticated risk management strategies of AI-powered portfolio management to the world of decentralized finance (DeFi), using advanced data science and in-house developed strategies from our team of world-class quant analysts. Our dynamic rebalancing and optimization techniques allow us to consistently deliver superior performance and risk-adjusted returns for our investors. By leveraging the latest technologies and our deep expertise in the field, we are able to offer our clients a unique and highly competitive offering in the rapidly growing DeFi market.

### Decentralised

Every DynaSet event, from its creation to every subsequent swap, is publicly visible and recorded on the blockchain. This decentralized approach has several key advantages: it ensures that all transactions are transparent and verifiable, it reduces the risk of fraud or censorship, and it allows users to have complete control over their own assets without the need for a centralized authority. Furthermore, the public nature of the DynaSet code means that anyone can review and audit it, adding an extra layer of security and trust.

### Non Custodial

When depositing into a DynaSet, users receive LP tokens that represent their share of the pool. This non-custodial approach means that users retain full ownership of their assets and have complete control over them. This is in contrast to centralized platforms, where users often have to trust a third party to hold and manage their assets on their behalf. By keeping their own keys and managing their own assets, users can have peace of mind that their funds are safe and secure, without the need to rely on anyone else. This also means that users can easily and quickly access their assets whenever they want, without having to go through any lengthy or complicated withdrawal processes. Your keys, your crypto.

### Secured

Every smart contract of the protocol is audited and DynaSet contracts received a 9.7/10 score on security from well known audit firm Hacken.

### Shared fees

By taking part in a DynaSet, the user belongs to a bigger pool with other depositors. This allow the user to share the trading fees as the DynaSet perform swaps from a single smart contract for all its participants.


# V1

### How it works

With this initial version of smart-contracts, there are various phases in a DynaSet lifetime, each of which is described below.

#### Contribution

Users have a specific period to contribute to the DynaSet. During that period, the users will be able to deposit within a list of tokens inside the forge smart contract through our dApp. This contribution will then be swapped to match the DynaSet weight and to mint DynaSet LP tokens. The value of the users' contributions will be considered at the forging time. SingularityDAO do not take accountability for the volatility of the deposited tokens during the contribution period.

#### DynaSet tokens minting (aka forging)

LP token price depends on the performance of the Dynaset. if the DynaSet is performing well, the total value locked in the Dynaset as compared to the DynaSet total supply will go up hence the DynaSet price will go up.

$$
P =TVL / S
$$

$$
LP r = C / P
$$

\
With

P = DynaSet LP Token Price

TVL = Total Value Locked in the DynaSet

S = Total Supply of DynaSet LP tokens

LPr = Dynaset LP Received for Contribution

C = Contribution Equivalent in USD<br>

#### Withdrawal of DynaSet tokens

Users keep custodial of their funds by owning a share of the DynaSet in the form of DynaSet LP tokens that can be withdrawn (taken from the forge smart contract to the user wallet) at the end of the contribution period from the dApp. This transaction will be charged with a gas fee as it happens on-chain. Withdrawals will not be available during the Beta.

**Trading Window**

After the forging, DynaSet LP tokens are allocated on the forges to the wallets which participated in the DynaSet. The contributed tokens are moved to the DynaSet contract and the trading window starts. From here the DAM can rebalance the DynaSet assets through the selected Decentralised Exchange Aggreggator (1inch) based on the signals it receives.

The DAM will monitor market & social media conditions, and if certain criteria are met, or AI signals are received, dynamically adjust between strategies and take appropriate actions. A complex layer of smart contracts will then analyse multiple DEX and Liquidity Pools, taking into account things like gas fees, slippage, and market depth. If all the criteria are met, a trade (or multiple smaller trades) will be executed.

#### Redeem

The function of redeeming consists of burning the DynaSet LP tokens to receive one of the underlying assets holded by the DynaSet. If users decide to redeem, they will pay the corresponding swap fees that the DynaSet contract will do to get to the desired token. Users can redeem at any time. If the users redeem outside of the redeem period, they will be charged with a capital cut.

There are two ways of redeeming the DynaSet LP tokens:

* If the user didn't withdraw its DynaSet LP tokens from the forge, he can redeem them from the 'Redeem from forge' function.
* If the user withdrew its DynaSet LP tokens from the forge, he can redeem them from the 'Redeem from wallet' function.

#### Fees structure

On every DynaSet there will be some periodic fees taken:

* Management fees that will be taken to ensure the execution setup of the DynaSet.
* Performance fees that will be taken on the alpha generated if the DynaSet performs above the hurdle rate, and distributed between the DAM and DAO participants. To become a DAO participant, users must have their SDAO tokens staked within the platform.

These fees will be taken periodically, based on the trading window of the DynaSet.

<br>


# Architecture

<figure><img src="https://lh6.googleusercontent.com/FBPZ79m6Y-DvXsZOOiCOSBsygYLJ35ocb2zlVIUDwzbMhPkIRKvP4mB4AU6-G3alC9ta9Onffd4UiOnlD0lYYvkn0W_RKV3yFCUwS9MN53KWt3A9cDUKRWyoq6N3odtR_dFbhY9q7o_oFZef7v3xKz_ZiSBB98go7yXPwdtBuUMYSfrJEkRXrRxaWzrAqySV8lLJvULArA" alt=""><figcaption></figcaption></figure>


# Audit

The full audit of the DynaSet V1 can be found on Hacken website, or via the direct link below:

<https://hacken.io/wp-content/uploads/2022/04/SDAO_30082022_SCAudit_Report-2.pdf>


# Vaults

Vaults allow you to send your tokens into a pool and get rewarded for locking these tokens. The rewards are fixed per pool, so the more SDAO are locked into the pools, the fewer the rewards will be.

SingularityDAO offers two forms of staking, Epoch and Unbonded.


# Epoch Vaults

Epoch vault staking refers to the process of holding cryptocurrency in a "vault" (i.e., a digital smart-contract) for a certain period of time, known as an epoch, in order to earn rewards. This is known as "staking" because the user is essentially putting their funds "at stake" in order to earn a reward.

It will lock your tokens for the length of an Epoch, the first of which will be 60 days. The first 5 day period of each Epoch is the deposit/withdraw window. During those 5 days you are able to add and remove tokens from both the previous Epoch and the newly begun one. No rewards are accrued during this time. After 5 days, any tokens in Bonded Staking are locked for the remainder of the Epoch and they will accrue rewards which can either be withdrawn during the first 5 days of the following Epoch, or left to automatically compound and roll over into subsequent Epochs.

Each user will only be able to stake up to a maximum number of tokens, and total number of tokens staked will also be capped. These numbers are subject to change on an Epoch to Epoch basis.


# Unbonded Vaults

Vaults that are open-ended and flexible. You can add and remove your stake and rewards at any time. There is no limit to the number of people who can take part, or the number of tokens an individual can add. As with Epoch Vaults Staking, you can leave your tokens here accruing rewards and they will continue to do so indefinitely, although you will need to manually manage any tokens earned.


# Yield Farming

In order to understand Yield Farming, you need to understand first Liquidity provision.&#x20;

Liquidity provision is a way of helping to make it easier for people to swap different crypto assets, like SDAO and ETH. When you provide liquidity, you're adding some of your SDAO and ETH to a big pile that other people can use to trade with. This helps make sure that there are always enough SDAO and ETH to go around, so people can buy and sell them easily. When providing liquidity to a pair of tokens, you receive back a Liquidity Provision token (LP token).

Yield farming is a way of earning SDAO rewards for helping to make the big pile of SDAO and ETH work better. When you do yield farming, you're staking your LP tokens to help make the pile bigger and more stable. As a reward for doing so, you get to receive some of the SDAO rewards that are given out.

SingularityDAO is a platform that makes it easy for people to provide liquidity and do yield farming.&#x20;

Liquidity provision

{% embed url="<https://app.gitbook.com/o/-MXWCTlsddd0sMNGe2sO/s/-MXWCk7lRdznO-DfZZSr/~/changes/cJA0MhdMHAuukAcrXSqd/guides/sdao-lp>" %}
How to provide Liquidity
{% endembed %}

How to Yield Farm LP Tokens

{% embed url="<https://app.gitbook.com/o/-MXWCTlsddd0sMNGe2sO/s/-MXWCk7lRdznO-DfZZSr/~/changes/cJA0MhdMHAuukAcrXSqd/guides/how-to-farm-lp-tokens>" %}
How to Yield Farm LP Tokens
{% endembed %}


# DEX

SingularityDAO aims to facilitate the ecosystem tokens interactions within a single dApp. On that section, you will find the below features:

[**Swap**](https://singularitydao.ai/swap): Use the swap function to exchange your Singularity ecosystem tokens in a decentralised fashion.

[**Liquidity**](https://singularitydao.ai/pools)**:** Liquidity provision is a way of helping to make it easier for people to swap different crypto assets, like SDAO and ETH. When you provide liquidity, you're adding some of your SDAO and ETH to a big pile that other people can use to trade with. This helps make sure that there are always enough SDAO and ETH to go around, so people can buy and sell them easily. When providing liquidity to a pair of tokens, you receive back a Liquidity Provision token (LP token).

[**Bridge**](https://app.multichain.org/#/router?bridgetoken=SDAO)**:** Allows you to bridge your SDAO tokens between Ethereum and BNB Chain blockchains.


# SDAO Staking

&#x20;SREP (SingularityDAO Reputation Points) system aims to revamp the current mechanism for DAO membership. This initiative responds to the need for a dynamic structure that recognizes varying degrees of engagement among members. It introduces a strategic approach to participation, moving away from the one-size-fits-all model to a system that acknowledges each member’s unique contribution to the ecosystem’s growth.

### What is the SREP Staking Solution

The SREP Staking Solution allows DAO members to lock their SDAO tokens for a specified period to earn rewards. Users receive SREP score and SDAO tokens as rewards. The longer and more SDAO tokens they lock, the higher their SREP score and rewards.


# Staking

Users can lock their SDAO tokens in a pool for a period between 90 and 360 days.

Users receive  :\
1\. SREP score, which would highlight their participation in the DAO – granting them various rewards and benefits. Initially the SREP would be used to decide their tier level for the launchpad.\
2\. SDAO tokens as rewards, proportional to their SREP score relative to the total pool's SREP.

There will be staking contracts on both the Ethereum (ETH) and Binance Smart Chain (BSC) networks (more to be added later). Each pool may have different maximum APR%.


# FAQ

### How does the staking process work?

Users can lock their SDAO tokens in a pool for a period between 30 and 360 days. For example, locking 1000 SDAO for 360 days will yield 360,000 SREP. Users retain their SREP unless they withdraw their SDAO before the lock period ends, which incurs a capital slash.

### What is a capital slash, and how is it calculated?

A capital slash is a penalty for withdrawing SDAO tokens before the lock period ends. It is calculated as:\
Capital Slash = 0.05% × Days Left\
For example, if a user withdraws with 300 days remaining, they pay a 15% fee.

### What rewards do users receive for staking SDAO?

Users receive two types of rewards:\
1\. SREP score, which would highlight their participation in the DAO – granting them various rewards and benefits. Initially the SREP would be used to decide their tier level for the launchpad.\
2\. SDAO tokens, proportional to their SREP score relative to the total pool's SREP.

### How is the amount of SDAO rewards determined?

The amount of SDAO rewards a user receives is proportional to their SREP score compared to the total SREP in the pool. For example, if a user has 1 million SREP in a pool with 100 million total SREP, they receive 1% of all rewards.

### Can users extend their staking period or add more tokens?

Yes, users can extend their staking period or add more tokens. Extending the period increases their SREP, and the new lock date must be later than the current one. Adding more tokens resets the lock period and increases both SREP and APR.

### What happens if a user withdraws their tokens early?

Withdrawing early reduces the SREP score and can lead to a downgrade in tier level. The SDAO tokens withdrawn are subject to a capital slash based on the remaining lock period.

&#x20;

### What actions can users perform in the staking interface?

Extend: Increase the lock period of their SDAO tokens.\
Deposit: Add more SDAO tokens and/or extend the lock period.\
Withdraw: Withdraw some or all staked SDAO tokens, incurring a capital slash if done early.\
Harvest: Claim pending SDAO rewards.

### Are there different pools for different networks?

Yes, there will be staking contracts on both the Ethereum (ETH) and Binance Smart Chain (BSC) networks. Each pool may have different maximum APR%.


# Guide

The provided screenshot shows the staking interface for the SDAO staking solution.

<figure><img src="/files/zhIMOiQ3a3aoOls3sSG3" alt=""><figcaption><p>Desktop View</p></figcaption></figure>

1. **Tier and SREP Information:**
   * Displays the current tier and the SREP score .
   * Shows the thresholds for different tiers: Iron, Bronze, Silver, Gold, Diamond.

2. **Pools Section:**

   * Lists the available pools for staking SDAO tokens.
   * Displays important information for each pool:
     * Token (SDAO)
     * Total Value Locked (TVL) / Amount Staked
     * Annual Percentage Rate (APR) and Claimable Rewards
     * Time left until unlock (in days, hours, and minutes)
   * Provides action buttons for each pool:

3. **Call to Action:**

   * **Deposit:** Initial Deposit

   <figure><img src="/files/M8g895FiDaFr14MoyYrs" alt="" width="188"><figcaption></figcaption></figure>

   * **Deposit More:** Increase staked amount

   <figure><img src="/files/NKoJx9Rhq5NG1n6jgG3X" alt="" width="188"><figcaption></figcaption></figure>

   &#x20;**Extend:** Increase lock period

   <figure><img src="/files/pRet7yohlrgP0mSqeUNI" alt="" width="188"><figcaption></figcaption></figure>

   * **Withdraw:** Withdraw staked tokens.

   <figure><img src="/files/I1cYyXDnxK3krFjFzUsD" alt="" width="178"><figcaption><p>With Early Withdrawal Penalty</p></figcaption></figure>

   <figure><img src="/files/7UNDLmwZPUYJ3g0qM5wF" alt="" width="177"><figcaption><p>After Unlock - No penalty</p></figcaption></figure>

   * **Claim:** Claim pending rewards.

   <figure><img src="/files/Sq2QknF71swwIJfFMOkj" alt="" width="188"><figcaption></figcaption></figure>

By using this interface, users can manage their staking activities, track their rewards, and monitor their SREP scores and tier levels.


# Audit

Staking contracts have been audited by Hacken\
[Link](https://wp.hacken.io/wp-content/uploads/2024/06/Hacken_SDAO_SCA-SDAO-_-LockerStaking-_-Apr2024_P-2024-311_2_20240617-17_33-1.pdf)


# SREP

SREP is a non-tradable score given to users for staking their SDAO tokens based on the formula:&#x20;

SREP = SDAO × Days Locked

#### New User Deposit

User locks 1000 SDAO for 100 days.\
*SREP* = 1000 × 100 = 100,000

#### Multiple Deposits

Initial Deposit: User locks 100 SDAO for 100 days.\
After 10 days, the user deposits an additional 200 SDAO for 120 days.\
Calculation:\
Initial deposit: SREP = 100 × 10 = 1000\
Second deposit: SREP = (100 + 200) × 120 = 300 × 120 = 36,000\
*SREP*: 36,000 + 1000 = 37,000

#### Early Withdrawal

User locks 1000 SDAO for 100 days.\
Withdraws 500 SDAO after 10 days.\
Calculation:\
SREP: (1000 × 10) + (500 × 90) = 10,000 + 45,000 = 55,000\
*Capital Slash*: 500 × 0.05% × 90 = 4.5% × 500 = 22.5 SDAO

#### Relocking

User initially locks 1000 SDAO for 1000 days.\
After 1000 days, relocks for another 1000 days.\
*SREP* = 1000 × 1000 + 1000 × 1000 = 2,000,000


# Tiers

The SREP (Singularity Reputation Points) system aims to revamp the current mechanism for DAO membership. &#x20;

* We will shift from the current SDAO-based tiers to an SREP-based tier system:\
  🏃 Ambassador — See **Phase 2 Restructure** section\
  🛠️ Iron — 500k SREP\
  🥉 Bronze — 1M SREP\
  🥈 Silver — 2.5M SREP\
  🥇 Gold — 5M SREP\
  💎 Diamond — 10M SREP

Gold and Diamond tier members will have a unique advantage in the enhanced incentive structure during select launchpad events. After the token generation event (TGE), these members have a 24–72 hour\* (this period may change based on per-launch specifics) window to assess the the newly launched token. If the launch doesn’t meet their expectations, they can claim the initial deposit token and deposit amount.

This feature, available for selected projects only, is designed to grant Gold and Diamond members greater control and flexibility in their decisions, enabling them to manage their risks and opportunities more effectively.

## First-Come, First-Serve (FCFS) Participation Restriction: <a href="#ea96" id="ea96"></a>

* Modify the FCFS allocation to require DAO membership, requiring SDAO to be staked, and ensure that dedicated and invested members receive appropriate rewards and opportunities.

### **Phase 2 Restructure: New Allocation System** + Launchpad V3 <a href="#e998" id="e998"></a>

Phase 2 will focus on establishing a new Launchpad infrastructure, a solution for granting allocations, and an additional tier:

* *Tier 6 — Ambassador*, will reward members for engaging with SingularityDAO’s products and social media platforms. This tier will offer a unique pathway for users to gain additional allocations irrespective of their SDAO holdings.


# General


# How to Set Up a Wallet

7 Steps to Set Up Trust Wallet

Disclaimer: Using wallets is always at your own risk. Please read more about blockchain and the responsibilities that come with decentralised wallets before using a web3 wallet. SingularityDAO won't be able to access your wallet at any time and can't be held responsible for user activities.

### **How to Set Up Trust Wallet Using the Trust Wallet App (mobile)**

You can use the Trust Wallet official tutorial located [here.](https://www.youtube.com/watch?v=VSZHiwUzoIo)

### How to Set Up Trust Wallet Using the Browser Extension on Chrome

1. Download the Chrome extension [here ](https://chrome.google.com/webstore/detail/trust-wallet/egjidjbpglichdcondbcbdnbeeppgdph)and click 'add to chrome' then accept.
2. Once this is done, click on the new Trust Wallet icon in your extensions. you will have 2 possibilities:\
   \- Create a new wallet\
   \- Import an existing wallet\
   *Importing an existing wallet will require you to use your seed phrase -* \
   *(Reminder: Never share your seed phrase with anyone as it will give them access to your funds or compromise your security.)*
3. To create a new wallet, click on 'Create Wallet'.\
   *Trust Wallet will propose that the user shares usage patterns - you can accept or refuse - it will not impact your wallet creation.*
4. Create a password for your wallet. Choose a secure password, read the Terms of Use and then click 'Next'.
5. Trust Wallet will remind you: Never share your Secret Phrase (that will give access to your funds) with anyone. Write down your phrase and store it in a safe place. Never in digital format (photo or text).  Click 'Start'.
6. Click on 'Reveal' to get your Secret Phrase. Write the phrase down, it is required in the next step. When you are confident that the phrase is safely recorded, click 'Next'.\
   *(Reminder: Never share your phrase, always store it offline)*
7. Trust Wallet will now require you to re-enter your phrase to confirm that you have recorded it correctly. When done, select 'Next'.\
   *(Reminder: Never share your phrase, always store it offline)*

Your wallet creation is complete - you can now choose to set Trust Wallet as the default wallet or not.

Remember, never share your seed phrase or secret key with anyone. Doing so will compromise the security of your wallet and could result in an irreversible loss of funds. Keep your keys safe and secure in an offline location.&#x20;

Any person or project requesting access to your keys is almost certainly a scam. There are no exceptions.&#x20;

Congratulations, your Trust Wallet is now set up


# How to Use Trust Wallet to Interact with the SingularityDAO dApp

5 Steps to Connect Trust Wallet to the SingularityDAO dApp

1. Navigate to [singularitydao.ai](https://docs.singularitydao.ai/guides/general/www.singularitydao.ai) and click 'Connect Wallet'.
2. Read and agree to the Terms and Conditions.
3. Select 'Trust Wallet' from the available options.
4. The Trust Wallet extension in your browser should now pop up and ask you to enter your password if you are not already signed in. \
   *At this point, you may need to manually open the extension depending on your browser settings.*
5. After unlocking your Trust Wallet extension, you will be requested to allow the connect to the SingularityDAO dApp.

Thats it, your wallet is now connected to the SingularityDAO dApp.&#x20;

Depending on how you use your wallet, you may want to add new SDAO or DynaSet LP tokens to your wallet. Please read [this guide](/guides/general/how-to-add-a-custom-token-in-trust-wallet) for more information.


# How to Add a Custom Token in Trust Wallet

4 Steps to Add a Custom Token in Trust Wallet

1. Click the manage tokens icon in the top-right.&#x20;
2. Click ‘add custom token’
3. Select ‘Ethereum’ or 'BNB Smart Chain' as appropriate and enter the corresponding token address. Click 'Next'.
4. Click 'Add custom token' to complete the process.

Congratulations! You can now view your token holdings from within Trust Wallet.

For a full list of Token Contract Addresses related to the SingularityDAO platform, please [go here](/dynasets/singularitydao-token-contract-addresses).


# How to Add a Custom Token in MetaMask

4 Steps to Add a Custom Token in MetaMask

**How to Add a Custom Token to MetaMask**

1. Click on 'Add Token' or 'Import Tokens'.
2. Navigate to the “Custom Token” tab.
3. Enter custom token address and click the “Next” button
4. Click the “Add Tokens” button

Congratulations! You can now view your token holdings from within MetaMask.

For a full list of Token Contract Addresses related to the SingularityDAO platform, please [go here](/dynasets/singularitydao-token-contract-addresses).


# Launchpad

If the answer to your questions is not available in the following articles, please create a ticket in SingularityDAO Discord > Assistance > raise-ticket

Or via the direct link: [Create a Support Request](https://discord.com/channels/918044007521714239/1052161749949882428)

<img src="/files/TD7mJq71463NMawa4qgC" alt="" data-size="original">

And the protocol admins will provide you with direct support.


# How to Interact with the Launchpad

Navigating the SingularityDAO Launchpad

Engaging with token launches on the SingularityDAO Launchpad is streamlined and user-friendly. The following guide outlines the steps to participate in token launches like Nunet, ensuring a smooth experience for users.

### Step 1: Connect Your Wallet

The Launchpad at launchpad.singularitydao.ai is compatible with wallets supporting MetaMask or WalletConnect. Ensure you connect the address you used for KYC, as this is the whitelisted address. Keep your software or hardware wallet updated. For Ledger users, enable “Blind signing” (previously “Enable contract data”).

### Step 2: View the Whitelisted Pool

You'll find the pool you're whitelisted for under ‘Active pools’ marked with a green ‘active’ label. Pools that are live but not accessible to you are listed under ‘live pools’.

#### For WETH Pools:

* Remember, you need to wrap ETH to WETH. Sending ETH directly is not valid and could result in loss.
* Here’s a [tutorial on how to wrap ETH](https://www.youtube.com/watch?v=tutorial_link).
* Click on the relevant pool to begin interaction.

### Step 3: Approve Smart Contract Interaction

Before swapping tokens, you must approve the Launchpad's smart contract to interact with your wallet. This is a standard Ethereum blockchain procedure. Approval does not mean token swap or token allocation.

* Click 'Approve' and sign the transaction in your wallet.
* Wait for the transaction to process, incurring a gas fee.

### Step 4: Swap Your Tokens

Once the smart contract is approved:

* Check the pool duration, swap progress, and your contribution limits.
* Enter the amount of WETH or USDT you wish to swap, then click 'Swap' and sign the transaction.
* A significant gas fee is associated with this step.
* If the pool fills before your transaction completes, your tokens will be returned minus the gas fee.

### Step 5: Claim Your Tokens

Your tokens will be available according to the specific launch's schedule (e.g., 10% on a certain date, followed by monthly tranches).

* To claim, navigate to the ‘Allocations’ page via the link at the top right of the launchpad.
* Press 'Claim' and sign the transaction, incurring a gas fee.
* You can claim monthly or accumulate tokens to claim in one go, saving on gas fees.


# DynaSets

If the answer to your questions is not available in the following articles, please create a ticket in SingularityDAO Discord > Assistance > raise-ticket

Or via the direct link: [Create a Support Request](https://discord.com/channels/918044007521714239/1052161749949882428)

<img src="/files/TD7mJq71463NMawa4qgC" alt="" data-size="original">

And the protocol admins will provide you with direct support.


# How to Participate in DynaSets

7 steps to participate in DynaSets on SingularityDAO.

1. Navigate the DynaSet of your choosing within either the DynaSet or DynaLab (beta) tab. \
   From here users are able to 'Deposit' (contribute tokens to the DynaSet), 'Redeem' (Exit the DynaSet), and 'Withdraw LP' (Claim DynaSet LP tokens to the user wallet for self-custody).
2. Click 'Connect wallet' in the top right corner of the portal if you have not already done so. You will then be prompted to unlock your wallet.
3. Click on 'Deposit'.&#x20;
4. Tick the box to accept the T\&C. \
   To participate in DynaSets, users are required to read and accept the Terms and Conditions.
5. Select the token and input the amount you wish to contribute to the DynaSet.
6. Click on 'Approve'.\
   You will be asked to approve the Ethereum transaction and pay the gas fee.
7. Click on 'Deposit'.\
   After the approval transaction has been completed, the deposit button will appear.\
   You will be asked to confirm the deposit in your wallet and pay the gas fee.

When the deposit transaction has been completed you will be able to see your contribution in the 'Contribution Status' panel of the DynaSet page.

After the end of the DynaSet contribution window, your deposit will be 'forged' with all other user deposits and the DynaSet will begin trading. At this time you will be able to view your contributions as DynaSet LP tokens and even withdraw those LP tokens to your own wallet, should you wish to take custody of them.


# How to Withdraw DynaSet LP Tokens

5 steps to withdraw DynaSet LP tokens from SingularityDAO.

DynaSet LP withdrawal is only available after the contribution window has closed and the DynaSet has been forged.

This is optional, if you decide not to withdraw, you will still be able to redeem directly from the forge using the 'From Forge' redeem function. If you wish to have custody of your DynaSet LP tokens, follow the below steps.

1. Connect your wallet to the dApp. \
   Make sure you are connected to the correct wallet and on the proper network.&#x20;
2. Click on 'Withdraw LP'.
3. Select the forge you have deposited tokens to.&#x20;
4. Enter the amount of DynaSet LP tokens you want to withdraw.&#x20;
5. Click on Withdraw.

In order to see DynaSet LP tokens within your wallet users will need to 'add a Custom Token'. This can be achieved by simply clicking this icon on the DynaSet page.

<figure><img src="https://lh5.googleusercontent.com/nZWBU2vOEPw2tQOhLlDhZva8fnloVAYoXExnPLKp--aIjIaF1-lDd7aCgRdexFcgxCNyS4CtFM26mAS25sItHzexs5vUL4wB6C3Gz1ijhUf42E26wozk9EeVqc5SOjz_3kQaJ4HOKmzXkYksd_onxXM3AEAwCrOIzNOZkZc2Dbf4cKyxQ5chr707Ww" alt=""><figcaption></figcaption></figure>


# How to Redeem DynaSet LP Tokens

Steps to redeem DynaSet LP tokens on SingularityDAO.

‘Redeem’ is the process of burning DynaSet LP tokens to claim your share of the underlying tokens held in the DynaSet.&#x20;

1. Connect your wallet.\
   Make sure you are connected to the correct wallet and on the proper network.&#x20;
2. Click on ‘Redeem’.

From here, you have two possible scenarios to redeem your tokens:

If you didn't withdraw your DynaSet LP tokens, you can redeem them directly from the forge.&#x20;

1. Select the ‘From Forge’ tab in the Redeem popup.&#x20;
2. Select the forge to which you deposited tokens.&#x20;
3. Select the token you want to receive in your wallet after redemption.&#x20;
4. Click on ‘Approve’ and confirm the transaction in your wallet. \
   This transaction will require some gas fee as it happens on-chain. Make sure you have enough ETH in your wallet to do so.&#x20;
5. Input the amount of DynaSet LP tokens you want to redeem.&#x20;
6. Click on ‘Redeem from the forge’. \
   This transaction will require some gas fee as it happens on-chain. Make sure you have enough ETH in your wallet to do so.

If you withdrew your DynaSet LP tokens from the forge, you can redeem them directly from your wallet.&#x20;

1. Select the ‘From Wallet’ tab in the Redeem popup.&#x20;
2. Select the token you want to receive in your wallet after redemption.&#x20;
3. Input the amount of DynaSet LP tokens you want to redeem.&#x20;
4. Click on ‘Approve’ and confirm the transaction in your wallet. \
   This transaction will require some gas fee as it happens on-chain. Make sure you have enough ETH in your wallet to do so.
5. Click on ‘Redeem from my wallet’. \
   This transaction will require some gas fee as it happens on-chain. Make sure you have enough ETH in your wallet to do so.

Upon completion of the redemption transaction, you will find your selected tokens in your wallet.


# Vaults

If the answer to your questions is not available in the following articles, please create a ticket in SingularityDAO Discord > Assistance > raise-ticket

Or via the direct link: [Create a Support Request](https://discord.com/channels/918044007521714239/1052161749949882428)

<img src="/files/TD7mJq71463NMawa4qgC" alt="" data-size="original">

And the protocol admins will provide you with direct support.


# How to Stake

9 Steps to Stake Tokens on SingularityDAO.

[1. ](/guides/general/how-to-add-custom-token)[Add the token to your wallet if you have not already done so.](/guides/general/how-to-add-custom-token)

2\. Click 'Connect to a wallet' in the top right corner of the portal if you have not already done so. You will then be prompted to unlock your wallet.\
\
3\. Choose between 'Unbonded Vaults' or 'Epoch Vaults' by navigating to the corresponding tab within the 'Vaults' category on the left side of the screen.

4\. Select your desired pool and then click the 'Stake' button.

6\. Input the number of tokens you want to stake.&#x20;

7\. Click 'Approve' - Skip this step if you have done so before.\
\
You will be asked to approve the Ethereum transaction and pay the gas fee.\
\
8\. Finally click 'Stake' and confirm the transaction in your wallet. Please wait for the transaction to complete, at which point you will see a popup showing the number of tokens added and the total amount of SDAO you have staked.

9a. To claim your tokens from 'Unbonded Vaults' you have 3 options:&#x20;

Withdraw: To withdraw the amount of SDAO you staked.&#x20;

Harvest: To withdraw the amount of SDAO you got rewarded by staking.&#x20;

Withdraw and Harvest: Performs the two above actions.

9b. To claim your tokens from 'Epoch Vaults' simply click 'Withdraw' during the withdrawal period.


# How to Yield Farm LP Tokens

7 Steps to Farm LP Tokens on SingularityDAO.

1\. Click 'Connect wallet' in the top right corner of the portal if you have not already done so. You will then be prompted to unlock your wallet.\
\
2\. Navigate to the 'Yield Vaults' tab located within the 'Vaults' category, on the left side of the screen.

3\. Select the desired vault and then click the 'Farm' button.

4\. Input the amount of LP tokens you want to farm.&#x20;

5\. Click 'Approve' - Skip this step if you have done so before.\
You will be asked to approve the Ethereum transaction and pay the gas fee.\
\
6\. Finally click 'Farm' and confirm the transaction in your wallet. \
Please wait for the transaction to complete, at which point you will see a popup showing the number of LP tokens added and the approximate APY.

7\. To harvest the rewards received simply click the 'Harvest' button and confirm the transaction in your wallet.

That's it! You are now farming your LP tokens.

NOTICE

After providing LP you are given LP tokens to hold or farm. Depositing those LP tokens in Yield Farming will result in Liquidity not being displayed on the Liquidity page. This will be updated in the future to reflect your actual LP balance while farming LP tokens.


# DEX

If the answer to your questions is not available in the following articles, please create a ticket in SingularityDAO Discord > Assistance > raise-ticket

Or via the direct link: [Create a Support Request](https://discord.com/channels/918044007521714239/1052161749949882428)

<img src="/files/TD7mJq71463NMawa4qgC" alt="" data-size="original">

And the protocol admins will provide you with direct support.


# How to Swap Tokens

6 Steps to Swap your tokens on SingularityDAO.

1\. [Add the tokens to your wallet if you have not already done so.](/guides/general/how-to-add-custom-token)\
\
2\. Click 'Connect wallet' in the top right corner of the portal if you have not already done so. You will then be prompted to unlock your wallet.\
\
3\. Navigate to the 'Swap' tab located within the 'DEX' category on the left side of the screen.\
\
4\. Input the amount you want to swap. The interface will automatically calculate the second token's value at the pool's current rate.

5\. Click 'Approve' - Skip this step if you have done so before.

You will be asked to approve the Ethereum transaction and pay the gas fee.\
\
6\. Finally, click 'Swap' and confirm the transaction on your wallet to complete your purchase. Once the transaction completes, a pop-up will be displayed showing the details of your swap and you will receive your tokens in your wallet.\
\
That's it! Your tokens will now appear in your wallet, ready to be added to pools or staked.


# How to Provide Liquidity

6 Steps to Provide Liquidity on SingularityDAO.

[1. ](/guides/general/how-to-add-custom-token)[Add the tokens to your wallet if you have not already done so.](/guides/general/how-to-add-custom-token)

2\. Click 'Connect wallet' in the top right corner of the portal if you have not already done so. You will then be prompted to unlock your wallet.

3\. Navigate to the 'Liquidity' tab found within the 'DEX' category on the left side of the screen and then click the 'Add Liquidity' button.

4\. Input the amount you want to add to the pool. You can specify the amount either as appropriate, and the platform will automatically calculate the second token's value at the pool's current rate.

5\. Click 'Approve' - Skip this step if you have done so before.

You will be asked to approve the Ethereum transaction and pay the gas fee.

6\. Finally, click 'Add Liquidity' and confirm the transaction in your wallet to supply tokens to the pool. Once the transaction completes, a pop-up will show details of the tokens you supplied and the number of LP tokens you received in your wallet.

That’s it! The portal will now show you your pool share, signifying that you are a part of the liquidity pool. Don't forget that you can [Yield Farm](/guides/vaults/how-to-farm-lp-tokens) those LP tokens to earn additional rewards.

\*Disclaimer\*\
Liquidity Provision comes with the risk of Impermanent Loss, please learn about this before making the decision to provide liquidity. <https://academy.binance.com/en/articles/impermanent-loss-explained>


# DynaSets

Understanding DynaSets

In this section, you will find more technical details about the smart-contract functions.


# Token Balances

```
getTokenAmounts()
        external
        view
        returns (address[] memory tokens, uint256[] memory amounts
```

Returns an array of the dynaset token and the corresponding balances.&#x20;

```
getBalance(address token)
        external
        view
        override
        returns (uint256)
```

Returns the balance of the Dynaset for a specific token&#x20;


# Deposit and Withdraw/Redeem

```
joinDynaset(uint256 expectedSharesToMint)
        external
        override
        nonReentrant
        returns (uint256 sharesToMint)
```

Mint new dynaset tokens by providing the proportional amount of each underlying token's balance relative to the proportion of dynaset tokens minted. function can only be called by the forge contracts and min/max amounts checks are implemented in forge contracts.

For any underlying tokens which are not initialized, the caller must provide the proportional share of the minimum balance for the token rather than the actual balance.

`dynasetAmountOut Amount` of dynaset tokens to mint order as the dynaset's dynasetTokens list.

```
 exitDynaset(uint256 dynasetAmountIn)
        external
        override
        nonReentrant
```

Burns `_amount` dynaset tokens in exchange for the amounts of each underlying token's balance proportional to the ratio of tokens burned to total dynaset supply. function can only be called by the forge contracts and min/max amounts checks are implemented in forge contracts.

```
dynasetAmountIn Exact amount of dynaset tokens to burn
```


# Execution

```
swapUniswap(
        address tokenIn,
        address tokenOut,
        uint256 amountIn,
        uint256 amountOutMin
    ) external payable nonReentrant {
```

Executes swap on Uniswap v2&#x20;

```
swapOneInch(
        address tokenIn,
        address tokenOut,
        uint256 amount,
        uint256 minReturn,
        bytes32[] calldata pools
    ) external payable nonReentrant
```

Executes swap on InchRouter

```
swapOneInchUniV3(
        address tokenIn,
        address tokenOut,
        uint256 amount,
        uint256 minReturn,
        uint256[] calldata pools
    ) external payable nonReentrant
```

Executes swaps on Uniswap v3 through uniswap


# Forge

During the contribution phase tokens are deposited in the forge. At the end of the contribution period the forge swaps all tokens deposited, into the DynaSets underlying assets, weighted based on the requirements of the DAM that are defined when initialising the DynaSets.

ForgeV1 allows to create mutiple Forge Objects to contribute to a specific dynaset.

```
function forgeFunction(
    uint256 forgeId,
    uint256 contributorsToMint,
    uint256 minimumAmountOut
) external nonReentrant onlyRole(BLACK_SMITH) {
```


# Deposit

Smart contract Front End for user contribution to the dynaset

```
deposit(
        uint256 forgeId,
        uint256 amount,
        address to
    ) external nonReentrant payable
```

Allows to contribute into a specific forge and receive Dynaset lp tokens to the value of the asset deposited.&#x20;

```
function depositOutput(uint256 forgeId, uint256 amount) public nonReentrant


```

Deposit Dynaset LP tokens in order to redeem them


# Redeem

```
redeem(
        uint256 forgeId,
        uint256 amount,
        address redeemToken,
        uint256 minimumAmountOut
    ) public nonReentrant
```

Allows to redeem a Dynaset token


# Withdraw

```
withdrawOutput(uint256 forgeId, uint256 amount) external nonReentrant
```

Withdraw the Dynaset token from the forge after forging&#x20;

```
capitalSlash(uint256 amount, uint256 contributionTime) public view returns (uint256) {
```

Reduces the amount of tokens redeemend if early redemption before contribution period.


# DynasetTvlOracle

Oracles allows to determine the Nav of a dynaset in USDC value. It is used in the contribution forge to determine the price of an LP token.

```
dynasetTvlUsdc() public view override returns (uint256 totalUSDC) {
```

Returns the Net asset Value of the Dynaset in converting the underlying to usdc value and summing up all of them.

```
tokenUsdcValue(address _token, uint256 _amount) external view override returns (uint256 usdcValue) 
```

Returns the value of a specific token in usdc value using chainlink oracle

```
dynasetUsdcValuePerShare() external view override returns (uint256) {
```

value of the share of a dynaset in USDC value


# Contract Addresses

**dynBTC**

DynaSet: [0xDa49AF8773Cb162ca56f8431442c750896F8C87A](https://etherscan.io/address/0xDa49AF8773Cb162ca56f8431442c750896F8C87A)

ForgeV1: [0x5d94f225cabd9010c8206c1036c6352f66c06e57](https://etherscan.io/address/0x5d94f225cabd9010c8206c1036c6352f66c06e57)

**dynETH**

DynaSet: [0x7bb1A6b19e37028B3aA5c580339c640720E35203](https://etherscan.io/address/0x7bb1A6b19e37028B3aA5c580339c640720E35203)

ForgeV1: [0xa5a94da27e2533ced5c68d6dfabdb5fb4269dd97](https://etherscan.io/address/0xa5a94da27e2533ced5c68d6dfabdb5fb4269dd97)

**dynDYDX**

DynaSet: [0x976a95786DA6f6eE1c0755cCFB9A22adac2BF7B2](https://etherscan.io/address/0x976a95786DA6f6eE1c0755cCFB9A22adac2BF7B2)

ForgeV1: [0xe125044733366071793afd1f9cb41521078dd029](https://etherscan.io/address/0xe125044733366071793afd1f9cb41521078dd029)


# SingularityDAO Token Contract Addresses

All Token Contract Addresses Related to the SingularityDAO Platform

### Ethereum (ERC20)

**SDAO** - 0x993864E43Caa7F7F12953AD6fEb1d1Ca635B875F

**dynBTC** **LP** - 0xDa49AF8773Cb162ca56f8431442c750896F8C87A

**dynETH LP** - 0x7bb1A6b19e37028B3aA5c580339c640720E35203

**AGIX** - 0x5B7533812759B45C2B44C19e320ba2cD2681b542

**NTX** - 0xF0d33BeDa4d734C72684b5f9abBEbf715D0a7935

### BNB Smart Chain (BEP20)

**SDAO** - 0x90Ed8F1dc86388f14b64ba8fb4bbd23099f18240

**NTX** - 0x5C4Bcc4DbaEAbc7659f6435bCE4E659314ebad87

### Cardano (Native Asset)

**AGIX Policy ID** - f43a62fdc3965df486de8a0d32fe800963589c41b38946602a0dc535\
**AGIX Asset** - asset1wwyy88f8u937hz7kunlkss7gu446p6ed5gdfp6

**NTX Policy ID** - edfd7a1d77bcb8b884c474bdc92a16002d1fb720e454fa6e99344479\
**NTX Asset** - asset19yuner2nz27pq9pjdta50xwfyd0d2nry2l6lvu<br>


# Governance

## **Overview**

Decentralised governance is the core of any DAO, and SingularityDAO is no different.

Anyone with an interest can take part in discussion, offering suggestions and feedback to guide the growth of the protocol, and anyone with SDAO voting power can cast their vote on proposals.&#x20;

## Governance Process

Proposals are submitted to the DAO, who are then encouraged to take part in open discussions on the SingularityDAO [Discord](http://discord.gg/singularitydao) and [Forum](https://forum.singularitydao.ai/) before a vote is held, at which time, based on the results, enactment of the upgrade proceeds, updated proposals are offered, or potentially dismissed entirely.

## SDAO Governance Token

Voting power for the Protocol is derived from the SingularityDAO Governance Token (SDAO).

SDAO holders can use these tokens to vote on proposals relevant to the protocol. All SDAO tokens have the right to vote, regardless of being held in wallets, staking smart contracts, or across multiple chains such as Ethereum or Binance Smart Chain.

## Snapshot

Snapshot is an off-chain gasless multi-governance client with easy-to-verify and hard-to-contest results. SingularityDAO Governance Votes take place on Snapshot.

## Progressive Decentralisation

Moving forward, the protocol will become progressively decentralised, enabling external developers to create upgrade proposals, until eventually full control of the protocol is handed over to the DAO.

This is a big task and will be handled slowly and with care, with constant input from all DAO participants. Of course, any changes required to enable this, will also be raised as Governance Proposals.

<br>


# Artificial Intelligence

Research Papers regarding Artificial Intelligence

[Architecture of Automated Crypto-Finance Agent](/research-papers/artificial-intelligence/architecture-of-automated-crypto-finance-agent)

[Adaptive Multi-Strategy Market Making Agent](/research-papers/artificial-intelligence/adaptive-multi-strategy-market-making-agent)

[Adaptive Predictive Portfolio Management Agent](/research-papers/artificial-intelligence/adaptive-predictive-portfolio-management-agent)


# Architecture of Automated Crypto-Finance Agent

Anton Kolonin1,2,3, Ben Goertzel1,2,3, Gergely Hegyközi1, Ikram Ansari1

*1SingDAO Ltd., Sotheby Building, Rodney Village, Rodney Bay, Gros-Islet, St.Lucia*

*2SingularityNET Foundation, Barbara Strozzilaan 362 (Eurocenter II) 1083 HN Amsterdam Netherlands*

**Annotation.** *We present the cognitive architecture of an autonomous agent for active portfolio management in decentralized finance, involving activities such as asset selection, portfolio balancing, liquidity provision and trading. Partial implementation of the architecture is provided and supplied with preliminary results and conclusions*

**Keywords: automated agent, crypto-currency, decentralized finance, liquidity provision, portfolio management**

## Introduction

The subject of decentralized finance is attracting the attention of investors as well developers and scientists due to high potential financial returns, high demand for implementation of automated business applications for investments, liquidity provision, and trading using crypto-currencies. A few unique properties of crypto- financial markets, enormous volatility and the presence of “on-chain” data such as transaction logs that may be used as an extra source of data for applications based on artificial intelligence and machine learning.

The key possibility associated with decentralized finance is automated liquidity provision, also called market making, which can be performed on either centralized exchanges (CEX), such as Binance, or decentralized ones (DEX) such as smart contracts like Uniswap or Balancer on the Ethereum blockchain. How machine learning and artificial intelligence can be applied to it is a matter of active study, such as attempts to learn efficient market making strategies \[1,2,3,4]. Unfortunately, the results are not that exciting so far with demonstrated ability to learn some basic principles of trading using limit book orders, with the ability to outperform “hodling” strategy (buy and hold on rising market) in very specific conditions. So more effort is required to take on this area.

The important part of automated trading is a price prediction \[5,6] which can take the form of either predicting price change direction as a classification problem or prediction of specific price level as a regression problem. The latter appear more critical for market making activity. That is because conventional trading with market orders could accept predicted price direction change as a trading signal for either sell or buy. In turn, market making with limit book orders on a CEX or swap pools on a DEX don’t need to sell or buy, they just need to set the appropriate price levels on bid and ask orders on a CEX or adjust the pricing function on a DEX according to anticipated price movement and the actual target level of its move. Unfortunately, the high volatility and manipulative nature of the crypto market provides challenges for the former, let alone the latter.

Finally, asset selection and portfolio balancing and rebalancing according to market dynamics remains a critical activity to active portfolio management, including the crypto markets. That requires appropriate metrics to evaluate assets for both inclusion of them in portfolios as well as re-weighting the portfolios as time goes on and the market changes. The volatile nature of the crypto markets provide challenges for some of the traditional metrics like “Sharpe Ratio” which can not be allied on “bear” markets. That involves the need to search for advanced ways of asset quality assessment \[7], such as “Modified Sharpe Ratio” \[8,9]. Moreover, for the purpose of active portfolio management involving active trading of the vested assets by portfolio manager it might be not applicable either because the variance reduces the quality of an asset according to most of the conventional metrics, while the trading strategy exploiting variance may be actually granting more value for a volatile asset.

The presented work will focus on the approach to deal with the above mentioned challenges and provide some preliminary results.

## Overall Architecture

### System Components and Layers

Below we provide an overall design infrastructure involving assembly of artificial intelligence (AI) agents or “Oracles” to be used across for generic portfolio management, liquidity provision and price prediction prices and on various decentralized financial markets. We expect to deploy an ecosystem of such AI Oracles to support investment decisions on a platform hosting the Oracles to help increase the value and returns of the investments by means of providing liquidity to decentralized cryptocurrency markets. Each of the agents in the ecosystem will be serving as an AI Oracle for end business applications and smart contracts of the as well as other agents.

The scope of business activities to be served by the AI Oracles can be seen on the following diagram. The important part of the diagram is that it assumes explicit difference between “inventory/portfolio” (in the scope of “Portfolio Balancer''), which may aggregate multiple assets/instruments for execution and the “DEX swap pool” or “DEX balancing pool” (in the scope of Market Maker/Trader) which may be just one of the strategies involved in maintenance of the portfolio (other strategies may be hodling, trading on a DEX or CEX, providing limit orders on CEX, etc.). That means, one “inventory/portfolio” may have multiple “DEX swap pools'' or “DEX balancing pools” with different strategies, weightings, pricing curves, etc.

![](/files/-MfhiVbV124CYh6kwL7N)

**Fig.1.** Business functions/applications (at the top) served by AI Oracles (at the bottom).

How the AI oracles interact with each other and the data sources may be seen on the following diagram.

![](/files/-MfhiHrPL9XP_2h7R911)

**Fig.2.** AI Oracles (in the middle) serving business functions/applications (at the top) relying on data scalping services (at the bottom).

The **Portfolio Planner Oracle/AI** agent will be using accumulated on-chain market data and getting predictions on price trends and volatility from the Price Predictor Oracle/AI to provide long-term weights on market instruments (tokens) helping human or programmatic Portfolio Managers building long-term investment portfolios (DynaSets) given the specified terms, volumes and acceptable levels of risk.

The **Strategy Evaluator Oracle/AI** will be using the same on-chain data and price trend/volatility predictions to evaluate different competitive strategies and parameters of these strategies using backtesting on historical data so the winning strategy corresponding to current market conditions could be recommended for current operations on portfolio maintained by Portfolio Balancer applications and smart contracts - by means of rebalancing its inventory, deploying smart contracts for liquidity provision on the portfolio instruments and executing corresponding trades.

The **Pool Weighting Oracle/AI** will be relying on the same data and predictions suggesting short-term weights on market instruments (tokens) helping Portfolio Balancer to adjust portfolio inventory given short- term risks.

The **Signal Generator Oracle AI** will be taking predictions of current price fluctuations and sentiment buzz in respect to specific instruments (tokens) to generate signals for trading and liquidity provision applications and smart contracts for when to buy, sell, create or cancel limit orders and what are the optimal sell, buy, ask and bid prices appropriate for that given the market momentum.

The **Sentiment Watcher Oracle/AI** will be monitoring news feeds on social and online media in respect to specific instruments (tokens) and overall crypto-related buzz to provide overall assessment of the sentiment for Signal Generator and Price Predictor for their inferences.

The Price Predictor appears to be a key component of the ecosystem serving predictions of price trends and volatility at different prediction horizons for all multiple other agents listed above. It uses AI/ML relying on all sorts of market, fundamental and sentiment data available to serve the rest of the ecosystem with predictions based on that.

The data feeding the AI Oracle agents will be collected in a number of ways, including scalping centralized exchanges, such as Binance, for trading data like trades and limit order book snapshots (Binance Scalper), crawling DEX on-chain trades on protocols such as Uniswap V2 using 3rd party data gateways such as The Graph service (Contract Scalper) or monitoring corresponding DEX smart contracts on the live Ethereum Node using Infura API. Moreover, the information about the overall supply and distribution of the instruments (tokens) will be collected from live Ethereum Nodes as well (Token/Wallet Scalper).

The presented architecture is currently being implemented. Primarily, the Strategy Evaluator, Price Predictor, Portfolio Planner and Pool Weighter are under construction with some of the preliminary results presented further in this paper.

### Simulation and Backtesting Architecture in Strategy Evaluator

The key component of the **Strategy Evaluator** is expected to be Simulation and Backtesting frameworks serving two different yet complementary purposes.

The **Simulation** framework is intended to simulate multi-agent trading and market making activity within a configured environment of virtual agents and market conditions. Given the tentative price curve as an externally driven “fundamental” trend, these agents are interacting on the simulated market either as liquidity providers (LP) posting bid and ask orders on the limit order book or as liquidity takers (LT) executing market orders against the order book. Both LP and LT agents may be following different strategies but they are given the same conditions at the startup of the simulation – in terms of either fixed income rate or initial credit in either base or quote currency. The results are recorded during the simulation and returns or losses of every agent are evaluated at the end.

The **Backtesting** framework is similar to Simulation one, but the price trend is not simulated but rather taken from real live or historical data. Also, only a limited set of agents are being simulated, while the activity from other agents is assumed presented by real historical trades and limit order book snapshots. The execution of limit book orders made by simulated data is done solely on real historical or live orders, with account to time, so if no appropriate “real” trade is found matching the time and price of “simulated” limit order, the latter is not executed.

Both frameworks have their pros and cons. The Simulation may be oversimplifying behavior of a real market removing actual agents executing the strategies not anticipated by the simulated population, but it can actually render the “zero-sum game” \[10] phenomenon known to low liquidity markets such as crypto markets. The Backtesting may be used to evaluate the strategies being prospected on the real market patterns but the “zero-sum game” effects will be undercounted because no actual impact on the market will be happening due to activity of the “simulated” agents.

Both frameworks, depending on the presence or absence of the historical or real data, can be used by Strategy Evaluator to assess applicability of one or another market making or taking strategy given the inventory of an assets in prospective or actual portfolio under target market conditions.

### Price Predictor

The Prediction Oracle (“Price Predictor”) is supposed to take a key role in the suite of AI agents, so that the “Price Predictor” provides the following inputs for the other services and AI oracles, as shown on the figures above. Expectation of price for specific time in the nearest future can be used by Market Makers/Takers to execute their trading (market or limit) orders. Expectations of price trends and volatility levels can be used by Portfolio Balancer and Portfolio Manager for the purpose of inventory re-weighing (Portfolio Manager) or selection of the strategy for inventory rebalancing (Portfolio Balancer).

The main principle of the Predictor is the ability to perform predictions for “expected market price” values for target symbol pairs (“markets”) on specific “exchanges” in real time, being able to A) update its model on the fly using long-term historical data and B) provide predictions at the same time using short term live data. The Predictor can simultaneously do both at one time, around the clock, having this potentially applied to different symbol pairs and exchanges - see the following figure for explanation.

**Incremental training.** Update predictive models by re-training on historical data spanned over temporal “training interval” (hour, day, week, month, quarter, half-year, year) periodically, using a “period” increment (5 minutes, hour, 6 hours, day, week, month, etc.) and “historical interval” window to get the features from entire “training interval” - respectively to the historical intervals, so the “period” is somewhat less than the “training interval”, so the “training intervals” overlap with increments of the “period”. When training is being done, each training iteration involves the chunk of data of “historical interval” as input and the chunk of data to be predicted at once as a “batch”, so there may be many iterations with overlapping frames of “historical interval” plus “batch” width within the single “training period”.

**Incremental prediction.** Use the latest model (learned on the most recent long-term “training interval” upon completion of the last “period”) to predict the “expected market price” during the next current ”period”. The input data used against the model will be the latest rolling “historical interval” covering part of the latest “training interval” and part of the currently being predicted “period”, from the very beginning till the very end of the latter. The predictions within the period may be taking place on the basis of “batches”, so the same “historical interval” may be used to predict price in several subsequent points of time within a single “frame”, so the “historical intervals” overlap with increments of the “batch”.

![](/files/-Mfhi1GfnKIAGovoDGxA)

**Fig.3.** Overlapping training and historical intervals for periodic update of the prediction models, with possibility of batch predictions in real-time environment.

Selection of duration of temporal durations of the “intervals” (“training” and “historical”), “periods” and “batches” may be defined by the runtime performance constraints such as the following. Ideally, the “period” and “batch” both should be equal to 1 (minimum time unit such as second) but it might be unrealistic due to run-time performance and response time requirements.

* * * “Training intervals” should be long enough to provide enough data for reliable prediction accuracy but they also should be short enough so the training time takes less than a period.
    * “Historical intervals” should be long enough to capture historical data used to derive prediction but short enough so that prediction is done fast enough in order to minimize the size of the “batch”.
    * “Periods” should be short enough to have the models re-trained on the newest training intervals as often as possible but they also should be long enough to let the training be completed before the end of any period.
    * “Batches” should be short enough (ideally - 1 minimum time unit such as second) to let the times of prediction be as close to the current historical interval but long enough to let each prediction act to be completed timely within the duration of the current batch.
    * Also, the “batches” may be extended in duration because of the business requirements to have an extended horizon of predictions. In such cases the frames may overlap and have the terminal times of the frames exceeding terminal times of the periods that contain them. Implementation of the batch-based predictions may vary depending on actual prediction algorithms, like follows.
      * If using polynomial extrapolation or linear regression, any number of points can be predicted in one shot.
      * If using neural networks predicting one value at a time, the series of values within the batch window may be predicted iteratively, having each previous value added to the end of input data for the new position of the historical window.

While the default setup described above assumes that prediction will be always using the very latest model trained on the very latest training interval, there may be different improvements of such principle based on practical considerations such as the following.

* * * Since some of the symbol pairs (“markets”) may be bound to the same fundamental and/or speculative reasons, it could be possible to share/reuse the same model (trained on a single symbol pair) across different symbol pairs. In such a case, a single training process may run on a single historical interval corresponding to the “reference market” creating a “reference model” but multiple prediction processes may run on the same “reference model” applying it, with corresponding scaling, to similar “markets” relying on multiple corresponding prediction intervals.
    * It might be figured out that models are specific not to the current and the most recent historical data but rather typical market conditions such as “bullish”, “flat”, and “bearish” combined with different market caps and types of instruments. In such a case, instead of incrementally re-training the models, it might be better to have a suite of pre-trained models in stock and apply the one that is better matching expected market condition based on separate grand-model matching kind of dynamics of prediction interval and suggesting corresponding “stock model” (“model out of stock” so to speak) instead of training another one.

### Portfolio Evaluation Principles in Portfolio Planner and Pool Weighter

For active portfolio management, Portfolio Planner and Pool Weighter, have to be evaluated together with decisions taken in respect to one thing affecting the decision taken in respect to another. The first thing is assets included in the portfolio by Portfolio Planner and their weights adjusted by Pool Weighter. The second thing is a strategy to execute the portfolio, such as super-strategy – either “Hodling” or “Liquidity Provision” (“Market Making”) or “Trading” (“Liquidity Taking”) as indicated on Fig. 1 above. Moreover, there may be more precise identification of each of these super-strategies as a sub-strategy with specific parameters for profit margin, limit order cancellation, order grid settings and many others. In regards to the Pool Weighter it might be not a single strategy, but a combination of the strategies applied to dedicated fractions of an entire portfolio.

In order to evaluate an asset alone, classical approaches derived from return and variance, with “Sharpe Ratio” being the most famous, are questioned if they can be applicable to highly volatile markets \[7]. The simplest solution we have found is to use the so-called “Modified Sharpe Ratio” \[8,9], which denominates the return by variance in case of positive return but multiples the loss by variance in case of negative return. In this case, if two assets provide the same loss (negative return) for some period of time, the one with smaller variance is ranked as more preferable with overall “Modified Sharpe Ratio” close to zero.

However, for some particular strategies suggested by active portfolio management, referring to variance might be misleading. For instance, in case if portfolio manager is performing liquidity provision based on solid fundamental knowledge, semi-insider information or high-quality price prediction models, the volatility might be rather exploited and turned into higher returns than it would be expected based on “hodling”.

Because of the latter reason, we anticipate both Portfolio Planner and Pool Weighter to use either Simulation or Backtesting framework to evaluate actual performance of an asset in terms of profits or losses recorded on the basis of actual strategy execution with specific strategy parameters at target market conditions.

## Partial implementation and initial results

Given the current state of development, some aspects of the AI Oracles presented above have been tested on real data from Binance CEX.

![](/files/-MfhhmkCbyl5nVVN0fG1)

**Fig.4.** Profits (right bars) and losses (left bars) for market making by different strategies compared to “hodling” (at the bottom) where strategies based on price predictions actually know the future price as if they were having “insider” information.

Simulation and Backtesting have been on Bitcoin BTC/USDT exchange rate on different time intervals for the past half year with consistent results across time intervals and different strategies of market making. It has been shown that almost any selected market making strategy may be profitable (with no losses) if an agent can anticipate the price movements and the price level. In that case, the most profitable strategy has turned to be “zero-spread market making” (in the middle of Fig.4) with ultimate returns compared to “hodling” (at the bottom of Fig.4). The next two strategies using the same “prediction” technology were strategies setting the bid and ask orders at the price level one point better than the competitors – based on the limit order book information known from the last limit order book snapshot (at the top of Fig. 4). All of the three strategies made it possible to outperform the “hodling” strategy substantially.

![](/files/-MfhhfYrSjFZdqurnMFo)

**Fig.5.** Profits (right bars) and losses (left bars) for market making by different strategies compared to “hodling” (at the bottom) where strategies based on price predictions use linear regression with error level about 10% less than just relying on the last known price.

Advanced experiments with more realistic price prediction technology provided by the Price Predictor discussed above have been run on the same data, as shown on Fig. 5. In fact, by the time of writing this paper almost no one of machine learning algorithm, known to deal with time series data, including LSTM, Lasso, and Signature, were able to provide accuracy of price level prediction with error less than can be obtained just by looking at the last known price. The only methods improving the results with decrease of error level to 10% less were plain Linear Regression and Ridge Regression. Unfortunately, this level improvement did not make it possible to outperform the “hodling”.

Portfolio evaluation experiment has been done for 5 assets from so-called “Defi-5” (UNI, AAVE, UNI, CRX, COMP) index plus Bitcoin (BTC) and Ethereum (ETH) for specified time intervals during the high volatility of crypto-market on (1 hour on May 4, 2021, per minute data sampling). Straight evaluation of the assets with return, variance (stdn) and “Modified Sharpe Ratio” (msharpe) is shown on Fig. 6. For one observation, it is seen that high volatility of ETH makes it less attractive than AAVE and COMP than it would be based on single return. The latter would be true even for plain “Sharpe Ratio”, though. However, it can be also seen that small variance of SNX and BTC compared to CRV, making them less unattractive compared due to the nature of the “Modified Sharpe Ratio”.

![](/files/-Mfhgo0Xs7SnyVV7xnP8)

**Fig.6.** Potentially target assets for portfolio evaluated by return (left bars on the top), variance as normalized standard deviation (right bars at the top) and “Modified Sharpe Ratio” (bars at the bottom).

![](/files/-MfhfHJNyNCrn3jqxH-m)

**Fig.7.** Potentially target assets for portfolio evaluated by backtesting using predictive strategies (right bars) compared to “hodling” (left bars).

Moreover, the same assets were evaluated with backtesting on historical data using the same interval and results have shown quite different distribution of preference. The backtesting was comparing the profits/losses of “hodler” agents (which are proportional to return on the Fig.6) with profits/losses of the agents employing all possible strategies relying on knowledge of the future price. In the latter case, ETH and BTC appears the most preferable, despite negative return (by “hodling”) of the BTC and high variance of ETH.

## Conclusion

The suggested architecture of automated agent for active portfolio management in decentralized finance, including portfolio planning and balancing, liquidity provision and trading appear quite flexible, covering all aspects of the crypto-investment business.

The preliminary results show utility of automated simulation and backtesting for strategy selection, value of using contents of the limit order book for liquidity provision on CEX and possibility of increase of the market making profitability even with small increase of accuracy of the price prediction.

## References

1. Ganesh S., et. al. Reinforcement Learning for Market Making in a Multi-agent Dealer Market.

*arXiv:1911.05892v1 \[q-fin.TR]* 14 Nov 2019. <https://arxiv.org/pdf/1911.05892.pdf>

1. Sadighian J. Deep Reinforcement Learning in Cryptocurrency Market Making.

*arXiv:1911.08647v1 \[q-fin.TR]* 20 Nov 2019. <https://arxiv.org/pdf/1911.08647.pdf>

1. Sadighian J. Extending Deep Reinforcement Learning Frameworks in Cryptocurrency Market Making. *arXiv:2004.06985v1 \[q-fin.TR]* 15 Apr 2020. <https://arxiv.org/pdf/2004.06985.pdf>
2. Gu´eant O., et. al. Dealing with the Inventory Risk. A solution to the market making problem.

*arXiv:1105.3115 \[q-fin.TR]* 3 Aur 2012. <https://arxiv.org/pdf/1105.3115.pdf>

1. Tsantekidis A. Using Deep Learning for price prediction by exploiting stationary limit order book features. *arXiv:1810.09965 \[cs.LG]* 23 Oct 2018 <https://arxiv.org/abs/1810.09965>
2. Yanjun Chen et. al. Financial Trading Strategy System Based on Machine Learning. *Hindawi / Mathematical Problems in Engineering Volume 2020, Article ID 3589198, 13 pages.* <https://doi.org/10.1155/2020/3589198>
3. Scholz H. Refinements to the Sharpe ratio: Comparing alternatives for bear markets. *Journal of Asset Management 7(5):347-357 Follow journal DOI: 10.1057/palgrave.jam.2250040,* December 2007.
4. Israelsen C., A refinement to the Sharpe ratio and information ratio, *Vol. 5, 6, 423–427 Journal of Asset Management*, 2005.
5. Alvi J., et. al. Modified Sharpe Ratio Application in Calculation of Mutual Fund Star Ranking. Global Journal of Business Economics and Management Current Issues 10(1):58-82.
6. Hanley B. A zero-sum monetary system, interest rates, and implications. *arXiv:1506.08231 \[cs.CE]* 26 Jun 2015 <https://arxiv.org/pdf/1506.08231.pdf>


# Adaptive Multi-Strategy Market Making Agent

Anton Kolonin1,2,3, Ikram Ansari1

1 SingDAO Ltd, Gros-Islet, St. Lucia

2 SingularityNET Foundation, Amsterdam, Netherlands

**Abstract.** We propose an architecture for algorithmic trading agents for liquidity provisions on centralized exchanges. These implementing what we call an adaptive market making multi-strategy, which is based on a limit order grid with continuous experiential learning. The concept exploits definitions of artificial general intelligence (AGI) as an ability to “reach complex goals in complex environments given limited resources”, and is treated as a universal multi-parameter optimization. We present basic reference on implementation of the architecture being back-tested on historical crypto-finance market data and capable of providing almost 1000% excess return (“alpha”) under evaluated market conditions.

**Keywords:** adaptive agent, back-testing, centralized exchange, continuous learning, experiential learning, liquidity provision, market making.

## Introduction

The subject of algorithmic trading is attracting attention of investors, developers, and scientists due to high potential financial returns, high demand for implementation of automated business applications for investments, and liquidity provision and trading across all sorts of financial markets, including crypto-currencies. One of the popular applications of that is so called “yield farming” in the crypto-industry, which makes it possible to create investment portfolios consisting of crypto-assets being used for automated liquidity provision also called market making. Yield farming can be per- formed either on centralized exchanges (CEX) such as Binance or decentralized ones (DEX) with smart contracts on Uniswap or Balancer on the Ethereum blockchain. Respectively, there is are a lot of studies on how machine learning and artificial intelligence can be applied to it, such as attempts to learn efficient market making strategies \[1,2,3,4]. Unfortunately, the known results are not that exciting so far with demonstrated ability to learn some basic principles of trading using limit book orders, and some ability to outperform “hodling” strategies (buy and hold on rising market) in very specific conditions. So more effort is required to take in this area.

The important part of automated trading is a price prediction \[5,6] which can take form of either predicting price change direction as a classification problem or prediction of specific price level as a regression problem. The latter appears more critical for market making activity. That is because conventional trading with market orders could accept predicted price direction change as a trading signal for either sell or buy. In turn, market making with limit book orders on CEX don’t necessarily need to sell or buy, they just needs to set the appropriate price levels on bid and ask limit orders on CEX, according not just to anticipated price movement, but the actual target level of its move. Unfortunately, high volatility and the manipulative nature of the crypto market provides challenges even for the former, let alone the latter, so even more work is needed in this direction, if the problem can be solved at all.

In this paper we extend our earlier work on the matter\[7], focusing on methodology and architecture for algorithmic trading agents for liquidity provision on centralized exchanges implementing what we call **adaptive market making multi-strategy based on limit order grid with continuous experiential learning**. The concept exploits a definition of artificial general intelligence (AGI) as an ability to “**reach complex goals in complex environments given limited resources**” \[8], being treated as **universal multi-parameter optimization**. Below we present basic reference implementation of the architecture being back-tested on historical crypto-finance market data capable to provide almost 1000% excess return (“alpha”) under evaluated market conditions. Along the way, we assess the value of the ability to predict the price during such activity as well as drawbacks of not being able to do it properly.

## Adaptive Market Making Methodology

For the initial experiment we have designed and implemented a market making methodology of limit order grid market making “macro-strategy”, where individual market making agents create a grid of limit orders with each individual order in the grid representing a specific “micro-strategy”. In turn, each of the micro strategies may have their individual parameters. The agent executing the “macro-strategy” has an option to revise the set of different “micro-strategy” sub-agents, as they were controllable sub-personalities in a scope of a single super-person being in total control of its own “multi-personality” - that is why we call this a “multi-strategy”.

The classical approach for using experiential or reinforcement learning would be creating an action space for a market making agent with actions such as creating bid and ask orders with different spreads \[1,2,3] and learning the behavioral model based on historical data. Significant performance results have been obtained with this approach from studies on historical and live crypto-trading data. We presume that might be due to the following factors. First, the stochastic nature of the crypto market might not make it possible to learn a single model on long historical interval s covering a variety of market conditions, so that a single model would work well for such conditions. Second, building an operational space of agents based on order-level actions might be too fine-grained where no statistically confident experience associated with corresponding feedback might be collected for any specific order creation or canceling in corresponding market situations.

The following consideration has lead us to a few decisions for simplifying the methodology of the initial experiments discussed further and making it more efficient and risk-tolerant. First, we have replaced operational space of actions with operational space of strategies being executed for determined time intervals. Second, the feedback or reward for using the strategy was evaluated as profit or loss for the period of strategy execution. Third, in order to speed-up the learning curve and mitigate the risk, we made it possible for an agent to execute a certain number of strategies at a time, having its “personality” split in several “sub-persona” child agents, with each of them running their own “micro-strategy”, while the parent agent “macro-strategy” was designated to control and manage the child agents. Fourth, each of the child “micro-strategy” agents could be run either in “real mode” trying to make real trades on the market, or in “virtual mode” just watching the live structure of the limit order book on the Exchange aligned with the stream of trades being closed and performing “virtual market making” like we are doing in our back-testing framework \[7].

In our current architecture evaluated in the course of presented work, each of the “micro-strategy” child agents has ability to create only one limit order at a time, where the position of the order on bid or ask sides is defined by price dynamics, spread is asserted to be one of the “micro-strategy” parameters. The order cancelling policy of such agents is defined by conservatism parameters of the “micro-strategy”, where orders can be either never cancelled until completion, or canceled if there is a need to create an order on the other side of the mid price, or if there is just a mid price change which needs the current bid or ask price to be updated. That is, the operational space of a child agent can be denoted as *P(s,c)*, where *P* is a point in parameter space, *s* is a spread in percents and *c* is order cancellation conservatism.

The “macro-strategy” of a parent agent is designed to start its market-making activity with all of its child “micro-strategy” agents with each of them placed in an individual point *P(s,c)* in the operational space having the space covered evenly by a grid of unique *N* configurations. Each of the child *N* agents is given *1/N* share of the parent agent’s budget so they can invest in their orders. The first round of trading from starting time *t0* during period *T* and order refresh rate *dt* is executed, and then the parent agent evaluates losses and returns of all of its children. For the next round of trading starting time *t1* during the same period *T*, the top *M* most profitable agents are selected and given a much larger budget as *1/M* share of the parent agent budget. At the same time, while *M* winners are doing the “real” market making with real budget, all of the remaining agents keep market making in “virtual mode” against the live market data. At the end of the next round, the returns and losses of all of the agents are collected and the new *M* winners are selected for the subsequent round starting *t1* while the “real” profits and losses are accumulated.

The profitability of an agent is assumed to mean positive returns as well as positive excess returns (“alpha”) compared to a “hodler” strategy agent which just holds the same budget as given to a market making agent. If the number of agents with positive excess return is less than *M* for a certain round then only that number of agents is selected for “real” operations in the next round with the real budget shared between them. If no agents have positive return exceeding the “hodler” return, the next round is skipped for “real” market making but “virtual” operations are continued in order to attempt to find suitable “micro-strategies” for subsequent rounds.

Optionally, each of the child agents may be making decisions relying not on the current market price (mis price), but rather on its future projection predicted for every new time point past refresh rate *dt* by a machine learning algorithm. In the current work we used only the simple linear regression algorithm relying just on the historical price data. For the “ground truth” prediction baseline we were using the historical data looked up in the following data point past *dt* in course of back-testing.

## Preliminary Experimental Results

The methodology described above has been implemented and tested relying on back- testing framework described in our earlier work \[7] with results presented art Fig.1.

The experiments have been run or based on BTC/USDT data from Binance for 6 days period starting 2021-6-21 17:00, relying on per-minute snapshots of the limit or - der book data and full scope of trades data. The *N* of “micro-strategy agents” was 18, so there were 6 different spread settings (0.0%, 0.2%, 0.4%, 0.6%, )0.8%, 1.0%) and 3 different order cancellation conservatism settings as described above. The *M* of winning agents for “real trading” was 3. The strategy evaluation period *T* was taken as 2 days, so only three rounds have been executed in each of the experiments. The experiments were run for order refresh period 1 hour (left side of Fig.1) and 1 minute (right side of Fig.1). The first set of experiments for the two refresh rates were run without predictions (top on Fig.1). The second set of experiments were run with “ground truth” predictions to evaluate baseline - what would be the maximum returns given the ultimate predictive abilities (middle on Fig.1). The third set of experiments were run using basic Linear Regression (see [https://scikit-learn.org/stable/modules/gener](https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LinearRegression.html)[ated/sklearn.linear\_model.LinearRegression.html](https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LinearRegression.html)) on price data, with mean absolute percentage error (MAPE) about 9% better than just using the “last known price” (from) previous data point on given price data for historical interval.

Each of the 6 experiments (with 2 refresh rates and three prediction setups) involved assessments of three kinds of returns based on the same initial budget given to an agent executing specific “macro-strategy”: “hodler” - just holding investments into base currency during the entire period of testing; all “micro-strategies” being executed together with *1/N* of allocated budget; “macro-strategy” described in the previous section being the subject of a given study.

The results on Fig.1 (top) clearly show about 800-1000% (8-10 times) excess re- turn compared to “hodler” if using the suggested “macro-strategy” for any refresh rate. At the same time, if using market making with all possible “micro-strategies” at once, it can provide significant (350%) “alpha” compared to “hodling” in case of hourly refresh rate but also underperform the “hodler” in case of minutely refresh rate. This is thought to be the key result of given work deserving further attention and exploration.

The other two experiments have shown that the ability to predict the price during such activities is a key to high returns as well as a point that not being able to do it properly leads to rather high losses. That is, using the “ground truth” level of price prediction (not achievable in real life) makes the “alpha” skyrocket to 5000-20000% (5-20 times) excess returns as seen in the middle of Fig.1. On the other hand, price prediction with high MAPE is causing straight losses which are still substantially less if using the adaptive “macro-strategy” suggested in this work.

![](/files/-Mfhd0Km7UUqiUnQyu_3)

![](/files/-Mfhd0Knsc-SDTjtzMn0)

![](/files/-Mfhd0KoSGVKubM8Bce2)

**Fig. 1.** Overall returns using different “macro-strategies”. Top – not using predictions, middle – using “ground truth” predictions, bottom – using predictions by Linear Regression. Left three bars – hourly refresh rate (*dt =1 hour)*, right three bars – minutely refresh rate (*dt=minute*). Groups of three bars indicating overall returns/losses by strategies (left to right): hodler, all “micro-strategies” acting together with no selection, “macro-strategy” described above.

## Conclusion

The proposed algorithmic market making methodology is designed for liquidity pro- vision architecture at <https://www.autonio.foundation/> and [https://www.singularity-](https://www.singularitydao.ai/) [dao.ai/](https://www.singularitydao.ai/). The preliminary results point at potential business value of using the adaptive market making multi-strategy based on a limit order grid with continuous experiential learning in the area of decentralized finance, automatically generating significant excess returns without of manual interventions for ongoing adjustment of market making strategy parameters depending on constantly changing market conditions.

Apart from that, the results point at the need or extra care to be taken in regard of using machine learning for price predictions and the need of careful assessment of the prediction quality results before integrating it into production pipelines.

Our future work will be dedicated to a) testing the developed methodology and architecture against extended time intervals covering different market conditions for different assets and trading pairs. This will be done by testing it with different strategy evaluation periods, parameter space discretization winner selection; b) improving the adaptive experiential learning to more intelligent navigation of the operational space of greater dimensionality involving more complex “micro-strategies” with a greater number of parameters; c) involving evolutionary/genetic programming in “micro-strategy” selection and evolution; d) incorporating the latest developments of the price prediction domain in the agent “micro-strategies”.

**References**

* 1. Ganesh S., et. al.: Reinforcement Learning for Market Making in a Multi-agent Dealer Market. arXiv:1911.05892v1 \[q-fin.TR] 14 Nov 2019. <https://arxiv.org/pdf/> 1911.05892.pdf
  2. Sadighian J.: Deep Reinforcement Learning in Cryptocurrency Market Making. arXiv:1911.08647v1 \[q-fin.TR] 20 Nov 2019. <https://arxiv.org/pdf/1911.08647.pdf>
  3. Sadighian J.: Extending Deep Reinforcement Learning Frameworks in Cryptocurrency Market Making. arXiv:2004.06985v1 \[q-fin.TR] 15 Apr 2020. <https://arxiv.org/> pdf/2004.06985.pdf
  4. Gu´eant O., et. al.: Dealing with the Inventory Risk. A solution to the market making problem. arXiv:1105.3115 \[q-fin.TR] 3 Aug 2012. <https://arxiv.org/pdf/> 1105.3115.pdf
  5. Tsantekidis A.: Using Deep Learning for price prediction by exploiting stationary limit order book features. arXiv:1810.09965 \[cs.LG] 23 Oct 2018 <https://arxiv.org/> abs/1810.09965
  6. Yanjun C., et. al.: Financial Trading Strategy System Based on Machine Learning. Hindawi / Mathematical Problems in Engineering Volume 2020, Article ID 3589198, 13 pages. <https://doi.org/10.1155/2020/3589198>
  7. Raheman A., et.al.: Architecture of Automated Crypto-Finance Agent. arXiv:2107.07769 \[cs.AI] 16 Jul 2021. <https://arxiv.org/abs/2107.07769>
  8. Goertzel B.: Artificial General Intelligence: Concept, State of the Art, and Future Prospects. Journal of Artificial General Intelligence 5(1) 1-46, 2014. DOI: 10.2478/ jagi-2014-0001, 2014.


# Adaptive Predictive Portfolio Management Agent

Anton Kolonin1,2\[0000-0003-4180-2870], \
Alexey Glushchenko1\[0000-0002-8183-9208], \
Arseniy Fokin1\[0000-0002-7868-6482], \
Marcello Mari1 , Mario Casiraghi1 , \
Mukul Vishwas1\[0000-0002-8824- 1954] \
1 SINGULARITYDAO LABS DMCC, Dubai, United Arab Emirates \
2 Novosibirsk State University, Novosibirsk, Russ

**Abstract:** The paper presents an advanced version of an adaptive market-making agent capable of performing experiential learning, exploiting a "try and fail" approach relying on a swarm of subordinate agents executed in a virtual environment to determine optimal strategies. The problem is treated as a "Narrow AGI" problem with the scope of goals and environments bound to financial markets, specifically crypto-markets. Such an agent is called an "adaptive multi-strategy agent" as it executes multiple strategies virtually and selects only a few for real execution. The presented version of the agent is extended to solve portfolio optimization and re-balancing across multiple assets so the problem of active portfolio management is being addressed. Also, an attempt is made to apply an experiential learning approach executed in the virtual environment of multi-agent simulation and backtesting based on historical market data, so the agent can learn mappings between specific market conditions and optimal strategies corresponding to these conditions. Additionally, the agent is equipped with the capacity to predict price movements based on social media data, which increases its financial performance.&#x20;

**Keywords:** Adaptive Agent, Backtesting, Crypto-Market, Experiential Learning, Limit Order Book, Market-Making, Multi-Agent Simulation, Narrow AGI, Active Portfolio Management, Price Prediction.

## 1. Introduction

The approach and architecture of an adaptive agent acting in an environment of the financial market, being a "Narrow Artificial General Intelligence" (Narrow AGI) agent specialized in the financial domain, has been actively discussed in recent years \[Raheman, 2023]. It was initially proposed as an agent-based solution for active portfolio management, and the overall architecture was outlined \[Raheman, KNOTH 2021].&#x20;

The latest work has explored the possibility of an AGI agent learning the ability for financial market prediction \[Oswald, 2023]. Some earlier works, such as \[Tsantekidis, 2018] and \[Ganesh, 2019], have approached the use of machine learning for the specific problem of market-making based on the limit order book on centralized exchanges in conventional financial markets. Other later works, such as \[Sadighian, 2019] and \[Sadighian, 2020], have tried to narrow this down by using reinforcement learning applied to the crypto market.&#x20;

The idea of the so-called "adaptive multi-strategy agent" (AMSA) was introduced in \[Raheman, AGI 2021]. In this approach, the market-making agent performs purposeful activity \[Vityaev, 2015] targeting the maximization of financial returns by means of experiential learning \[Kolonin, 2021] through a "try and fail" approach. It relies on a swarm of subordinate agents being executed in a virtual environment to determine optimal strategies, which are then executed in the real environment, as shown in Fig. 1.&#x20;

Such an agent is called an "adaptive multi-strategy agent" as it executes multiple strategies virtually and selects only a few for real execution. The virtual environment for strategy evolution is created with multi-agent simulation of the real market based on either a) a completely synthetic population of agents playing roles of market-makers and traders driven by the historical price curve or b) backtesting by simulation of exchange operation matching historical records of real trades executed on the market against historical snapshots of the limit order book (LOB) structure. The latest developments of this approach were presented recently \[Raheman, 2023], showing the capacity of this approach to perform in volatile crypto markets.

<figure><img src="/files/PuoHBnfleo2v3hBRsAW1" alt=""><figcaption></figcaption></figure>

**Fig. 1.** Architecture of the "adaptive multi-strategy agent" for market-making (MM). Market data, including records of executed trades and snapshots of the limit order book structure, are collected by a simulation and backtesting framework (at the top). The "controller" agent runs a swarm of trading bots that execute a wide range of market-making strategies in a virtual environment, returning virtual profits and losses (P\&L) associated with these strategies (on the left). On every strategy evaluation cycle, the "controller" selects the top-performing (in terms of P\&L) strategies for a given market- momentum and creates another smaller swarm of market-making bots to execute the selected strategies on a real exchange to collect real P\&L (on the right).

The environment of the AMSA agent consists of market data \[Raheman, AGI 2021] as well as social media data \[Kolonin, 2023], which can also be used for price movement prediction. The study of sentiment analysis for the purpose of market price 3 prediction has been explored before in \[Deveikyte, 2020] and \[Vishwas, 2022], but the latest study \[Kolonin, 2023] suggests "cognitive distortions," known in cognitive psychology, may serve as indicators of manipulations and panic.

<figure><img src="/files/8EgsBV1ZMzowY1LCmhmu" alt=""><figcaption></figcaption></figure>

**Fig. 2.** Operational space of the adaptive market-making agent as a “Narrow AGI” operating in an environment represented by financial market data, relevant social media news feeds, and performing financial transactions on the market according to strategies defined by specific pa - rameters.

## 2. Advanced Agent Architecture

Architecture of the AMSA agent explored in this study extends the one suggested in earlier work \[Raheman, 2023], as shown in Fig. 2. The agent presented in this study is capable of perceiving not only market data but also social media data. In order to optimize performance, the data is not consumed directly but is pre-processed. The raw market data, such as open-high-low-volume frames, raw trades, and LOB snapshots, are converted into about two hundred derivative metrics as time series, including derivatives and imbalances between buy and sell volumes or between volumes of buy/ sell trades and ask/bid limit orders. In turn, the social media data is processed so that social media and cognitive distortion metrics are identified and turned into time series as well, according to \[Vishwas, 2022] and \[Kolonin, 2023].

The parameters of an agent strategy used in this work were slightly different compared to the ones used in earlier works \[Raheman, AGI 2021] and \[Raheman, 2023]. We still use the percentage of the spread between the bid and ask prices of the limit orders along with the order refresh rate. But we have replaced the “order cancellation policy” (with only three fixed policies used) used in the above-mentioned studies with a “cancellation threshold” that specifies what the magnitude of the price movement should be in order to have the orders re-created. The latter provides more granularity and accuracy for strategy identification.

In addition to the extended version of the AMSA agent, an attempt was made to apply the experiential learning approach \[Kolonin, 2021] executed in the virtual environment of multi-agent simulation and backtesting based on historical market data so that the agent could learn mappings between specific market conditions and optimal strategies corresponding to these conditions.

Moreover, we explored how the entire principle of the adaptive multi-strategy operations can be adopted for a generic case of active portfolio management, including portfolio optimization and rebalancing across multiple assets, as illustrated by Fig. 3. For this purpose, we extended the agent design in two ways. First, we made it possible to evaluate, by means of simulation and backtesting, all “candidate” strategies across different markets, so the allocation of portfolio funds can be seen in a two-dimensional space with assets or instruments on one axis and a specific strategy, identified by its parameters, on the other axis. It should be noted that in our experiments described below, all assets/instruments were traded against the USDT currency.

<figure><img src="/files/MZZbh7khuExwnF745reM" alt=""><figcaption></figcaption></figure>

**Fig. 3.** Two-dimensional space for fund allocation in adaptive multi-asset and multi-strategy portfolio management. An asset in this case is a cryptocurrency, and a strategy can either be "hodling," which involves locking funds in an asset for the period of strategy evaluation or execution, or market-making with specific values such as bid/ask spread or order cancellation threshold.

In our experiment design, we extended the funds allocation to be unevenly distributed across both the assets and the strategies within a single asset. This allowed the amount of funds on a strategy execution cycle to be proportional to the positive returns observed on the previous strategy evaluation cycle, which was found to be beneficial.

In summary, the agent architecture we explored can be called adaptive predictive active portfolio management based on multiple strategies, being concurrently executed in the virtual environment of simulation and backtesting. The selected strategies are subsequently executed with the amount of funds allocated for real execution proportionally to returns gained in virtual execution on the basis of individual assets and strategies.

## 3. Experimental Results

### 3.1 Multi-asset multi-strategy adaptive portfolio management

In order to explore the possibility of using the suggested multi-asset and multi-strategy adaptive active portfolio management agent architecture on the crypto market, we ran backtesting experiments on three months of historical data from the Binance exchange, including September, October, and November of 2021. The data was represented by a full record of historical trades, as well as per-minute LOB snapshots. Four assets, namely BTC, ETH, AAVE, and UNI, were selected for the experiment, with market dynamics presented in Fig. 4.

<figure><img src="/files/SdaXYvkUo8e2NinN4LpP" alt=""><figcaption></figcaption></figure>

**Fig. 4.** Market dynamics for BTC, ETH, AAVE, and UNI cryptocurrencies during September, October, and November of the year 2021.

The backtesting experiment was performed on the data indicated above with an hourly order refresh rate, with a few different portfolio setups, and cumulative results presented on Fig. 5. One setup was just trying plain single-asset AMSA experiments for each of the four cryptocurrencies individually. Another setup involved a two-asset portfolio of BTC and ETH. The third setup involved a four-asset portfolio, including all four cryptocurrencies. For each of these setups, different time intervals for strategy evaluation and different weighing policies were employed. The intervals for strategy evaluation were 1, 3, 5, 7.5, and 15 days, spanning over respective 90 days of the three months. Two alternative weighing policies were employed. The first policy was evenly splitting the current portfolio fund value across assets and strategies on every iteration of strategy evaluation, for every asset and strategy combination that has rendered a positive return on the previous iteration, denoted as “fixed” on Fig. 5. The second policy was to weight the share of the entire portfolio fund value across asset and strategy combinations proportionally to the value of their positive returns, denoted as “weighted” on Fig. 5.

<figure><img src="/files/1gVzxCArwo6XFH740fbE" alt=""><figcaption></figcaption></figure>

**Fig. 5.** Percentages of returns-on-investment (ROI) for multi-asset adaptive active portfolio management through multi-strategy backtesting on historical data for different types of portfolios rendered as different bars in each bucket (all - portfolio of BTC, ETH, AAVE and UNI; BTC+ETH - portfolio of two assets, other four bars are single-asset). The left five buckets correspond to "weighted" fund allocation on asset/strategy grid, and the right five buckets - for "fixed" allocation. Each five buckets on the left and right correspond to different durations of periods of strategy evaluation and execution iterations.

Interpretation of the results on Fig.5 leads to the following conclusions. First, the "weighted" fund allocation appears more efficient, delivering up to 20% ROI in the case of weekly and bi-weekly strategy evaluation for the two-asset portfolio of BTC and ETH. Second, the weekly and bi-weekly strategy evaluation periods appear superior over the shorter ones. Third, only the combination of "weighted" fund allocation and longer strategy evaluation periods makes it possible to obtain positive returns in the case of a portfolio consisting of all four assets. Fourth, only the combination of the two main high-liquidity coins (BTC+ETH) in the portfolio has provided a non-negative ROI regardless of the other experiment settings, having the performance of the portfolio typically as the average of individual performances of its ingredients, with the exception of the case of the 3-day "weighted" setup where the BTC+ETH portfolio performance has turned out to be superior over the ingredients. At the same time, adding low-liquidity alt-coins to the portfolio was damaging ROI in all cases.

### 3.2 Experiential learning based on simulation and backtesting

The following experiment was run on the same interval of data as described in the previous section, focusing on the BTC/USDT market only. The experiment dealt with per-hour and per-minute market data sampling and order refresh rate during backtesting. Multiple agents employing different strategies were run concurrently in the backtesting environment, relying on the historical data used to simulate real exchange operation, as described in earlier works such as \[Raheman, AGI 2021], \[Raheman, KNOTH 2021], and \[Raheman, 2023]. Each strategy was indicated by order refresh rate (1 hour or 1 minute), bid/ask spread (0.1%, 0.5%, 1%, 2%, 10%), and order cancellation threshold (0%, 0.01%, 0.1%, 1%, 10%). Daily returns (ROI) of each strategy were evaluated, and at the same time, average values of every metric derived from raw market data were computed every day.

<figure><img src="/files/EYH2b7AlSSUzJUuIiGGQ" alt=""><figcaption></figcaption></figure>

**Fig. 6.** ROI% as a function of strategy parameters (bid/ask spread and order cancellation threshold) and market conditions (normalized trade volume referred to as "volumeN" here) rendered as 2-dimensional slices of a 3-dimensional ("spread" vs. "threshold" vs. "volumeN") cube, displaying the "spots of profit" corresponding to the highest ROI values (such as "spread" at 0.5 for "threshold" up to 1% and "volumeN" above 0.9).

Collecting daily returns per strategy parameters on a daily basis aligned with daily evaluations of the metrics corresponding to specific market conditions made it possible to stack up average ROI numbers in a multi-dimensional space of market strategies and market metrics over 90 days of operations on the exchange. Every point in such space could be further analyzed as a point of either loss or profit, depending on the stacked ROI value at that point. An example of such analysis for a space dimensionality reduced down to a 3-dimensional space is presented in Fig. 6.

The most informative market metrics have appeared to be the standard deviation of the market price, the imbalance between volumes of orders on ask and bid sides of the limit order book (LOB), the imbalance between volumes of trades of buy and sell side, the imbalance between the volume of all trades against the volume of all limit orders, and finally the normalized volume of trades. The latter one is presented as an example on Fig. 6, suggesting that the most profitable spot for market-making is associated with excessively high volumes of trades, spread around 0.5%, and a cancellation threshold up to 1%.

### 3.3 Predictive adaptive market making

The other experiment was run on the latest market data for BTC cryptocurrency during October and November of 2022, as shown in Fig. 7.

<figure><img src="/files/tDQUatCforT0IFPbH8cf" alt=""><figcaption></figcaption></figure>

**Fig. 7.** Market dynamics of Bitcoin (BTC) cryptocurrency during October and November 2022 (top) and a heat map of returns and losses per strategy, with a strategy evaluation period of 5 days (bottom). The vertical axis of the heat map corresponds to 12 intervals of 5-day strategy evaluation periods over the 60 days, top to bottom. The horizontal axis of the heat map corresponds to different strategies. The strategies based on experienced price movements are on the left half, while strategies relying on predicted price movements are on the right half. It is clearly seen that in the case of the period associated with a market crash (fourth row from the bottom), non-predictive strategies (left) are losing, while predictive strategies (right) are gaining great profits.

The same family of strategies as in the previous experiment was used, but each strategy was implemented in two different ways by independent agents. The agents of the first kind were handling limit orders based on the current market price and its movements. The agents of the second kind were handling their orders based on anticipated movements of the market price, relying on price predictions projected according to findings presented in earlier works on social media analysis and causal inference \[Vishwas, 2022] and \[Kolonin, 2023]. The experiment has been run within the same AMSA agent setup and simulation and backtesting framework as described above, with different strategy evaluation periods (15, 10, 5 days), order refresh rate (days, hours), and fund allocation policy (“fixed” and “weighted”), with results presented in Fig. 8.

It has been found that adaptive multi-strategy market-making relying on market price predictions turns out to be rather profitable (up to 25% ROI in 2 months) compared to the same family of strategies being executed without access to predictions, with one exception to one case when fixed fund allocation with 5-day strategy evaluation and daily order refresh rate period has provided 2.5% ROI even without predictions.

<figure><img src="/files/WrBiUXySWfrGHlsR47gy" alt=""><figcaption></figcaption></figure>

**Fig. 8.** ROI% of adaptive multi-strategy market-making for BTC during October and November 2022, predictive (based on social media) strategies on the left, non-predictive ones on the right.

## 4 Conclusion and future work

Primarily, we have found that the concept of adaptive multi-strategy market-making can be upscaled to active portfolio management for the purpose of risk mitigation. In our future work, we plan to extend it with more strategies involved, including conventional trading based on short and long positions. We also plan to have a more reliable evaluation of the approach or a richer list of assets for longer time periods.

Also, we have explored how to perform experiential learning on the virtual exchange environment simulated by means of backtesting against real historical market data. It has become possible to find meaningful connections between market-making strategies, market conditions, and profits or losses associated with them. Our future work will be dedicated to making this study cover a wider range of assets and financial strategies.

Finally, we have confirmed the value of market price predictions based on social media data on the course of market-making in the simulated environment of backtesting. In our future work, we plan to confirm its performance by means of market-making on real-time exchange data.

## References

\[Raheman 2023] Raheman, A., Kolonin, A., Glushchenko, A., Fokin, A., Ansari, I. Adaptive Multi-strategy Market-Making Agent for Volatile Markets. In: Goertzel, B., Iklé, M., Potapov, A., Ponomaryov, D. (eds) Artificial General Intelligence. AGI 2022. Lecture Notes in Computer Science(), vol 13539. Springer, Cham. <https://doi.org/10.1007/978-3-> 031-19907-3\_24, 2023

\[Raheman, KNOTH 2021] Raheman, A., Kolonin, A., Goertzel, B., Hegyközi, G., and Ansari, I.: Architecture of Automated Crypto-Finance Agent. In: 2021 International Symposium on Knowledge, Ontology, and Theory (KNOTH), pp. 10-14, doi: 10.1109/ KNOTH54462.2021.9686345, 2021.

\[Oswald 2023] Oswald, J.T. (2023). Market Prediction as a Task for AGI Agents. In: Goertzel, B., Iklé, M., Potapov, A., Ponomaryov, D. (eds) Artificial General Intelligence. AGI 2022. Lecture Notes in Computer Science(), vol 13539. Springer, Cham. <https://doi.org/> 10.1007/978-3-031-19907-3\_32

\[Tsantekidis, 2018] Tsantekidis A. Using Deep Learning for price prediction by exploiting stationary limit order book features. arXiv:1810.09965 \[cs.LG] 23 Oct 2018.

\[Ganesh, 2019] Sumitra Ganesh, Nelson Vadori, Mengda Xu, Hua Zheng, Prashant Reddy, Manuela VelosoSumitra Ganesh, Nelson Vadori, Mengda Xu, Hua Zheng, Prashant Reddy, Manuela Veloso. Reinforcement Learning for Market Making in a Multi-agent Dealer Market. arXiv:1911.05892 \[q-fin.TR], 14 Nov 2019.

\[Sadighian, 2019] Sadighian J.: Deep Reinforcement Learning in Cryptocurrency Market Making. arXiv:1911.08647 \[q-fin.TR] 20 Nov 2019.

\[Sadighian, 2020] Sadighian J.: Extending Deep Reinforcement Learning Frameworks in Cryptocurrency Market Making. arXiv:2004.06985 \[q-fin.TR] 15 Apr 2020.

\[Raheman, AGI 2021] Raheman A., Kolonin A., Ansari I. Adaptive Multi-strategy Market Making Agent. In: Goertzel B., Iklé M., Potapov A. (eds) Artificial General Intelligence. AGI 2021. Lecture Notes in Computer Science, vol 13154. Springer, Cham. <https://doi.org/> 10.1007/978-3-030-93758-4\_21, 2021.

\[Vityaev, 2015] Evgenii E. Vityaev. Purposefulness as a Principle of Brain Activity // Anticipation: Learning from the Past. (ed.) M. Nadin. Cognitive Systems Monographs, V.25, Chapter No.: 13. Springer, pp. 231-254, 2015.

\[Kolonin, 2021] Kolonin A.: Neuro-Symbolic Architecture for Experiential Learning in Discrete and Functional Environments. In: Goertzel B., Iklé M., Potapov A. (eds) Artificial General Intelligence. AGI 2021. Lecture Notes in Computer Science, vol 13154. Springer, Cham. <https://doi.org/10.1007/978-3-030-93758-4\\_12>, 2021.

\[Kolonin, 2023] Kolonin, A., Raheman, A., Vishwas, M., Ansari, I., Pinzon, J., Ho, A. Causal Analysis of Generic Time Series Data Applied for Market Prediction. In: Goertzel, B., Iklé, M., Potapov, A., Ponomaryov, D. (eds) Artificial General Intelligence. AGI 2022. Lecture Notes in Computer Science(), vol 13539. Springer, Cham. <https://doi.org/10.1007/978-3-> 031-19907-3\_4, 2023.

\[Deveikyte, 2020] Deveikyte, J., Geman, H., Piccari, C., Provetti, A. A Sentiment Analysis Approach to the Prediction of Market Volatility. arXiv:2012.05906 \[q-fin.ST], 2020.

\[Vishwas, 2022] Raheman, A., Kolonin, A., Fridkins, I., Ansari, I. Vishwas, M. Social Media Sentiment Analysis for Cryptocurrency Market Prediction. arXiv:2204.10185 \[cs.CL], 2022


# Smart Contract Audits

SingularityDAO smart contracts are audited by Hacken and Certik

Smart Contract Audits by Hacken - <https://hacken.io/audits/#singularitydao>

Smart Contract Audits by Certik - <https://www.certik.com/projects/singularitydao>


# Telegram Admins

## Official Telegram Admins

Here you can find a list of all our official admins and trusted volunteers - Remember none of them will ever contact you in private if you do not reach out first.

CEO

* Marcello @Nevermind\_AI

Team

* Jon @Physix1
* Robert @Casartell1
* Russ @CryptoSpecimens
* Antoine @fsdba
* Amaury @@AmauDlr

Volunteers

* Zolgo @ZollieDollie
* Ibby @ibbybenali
* Peter @peter\_ce
* Haley @Aloha\_Haley
* Mac @MacForaday
* Shaun @ShaunHawk
* Jack @Jack\_ington
* Ilija @Herja\_SAI
* Ringo @Xinixke
* Marina @MarinaMima
* Jeremy @Jer8888
* DynoBorgi @DynoBorgi


