> For the complete documentation index, see [llms.txt](https://stiven-bolter.gitbook.io/solyum-bot/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://stiven-bolter.gitbook.io/solyum-bot/basics/security-tips.md).

# Security Tips

{% hint style="info" %}
**DISCLAIMER : of course TEAM DOES NOT HAVE ACCESS to your private key, keys are only stored locally on you machine!**
{% endhint %}

**Don't worry, private keys are encrypted** on bot launch 🔐

### &#x20;**Is Solyum Bot safe? 🔐** <a href="#is-selenium-bot-safe" id="is-selenium-bot-safe"></a>

<br>

{% hint style="success" %}
Our Code is **100% open source** you can verify, fork, or help contribute on Github
{% endhint %}

**YES !** There is no virus in our code, and as said before, we're open source... "virustotal.com \*link\*"

{% hint style="success" %}
Anti-bot **protect** A complete bypass of the anti-bot system, because. the bot is running on your computer. **You will never get banned on DEFIExchange**
{% endhint %}

{% hint style="success" %}
**Avoids web interfaces & Metamask and interact directly with chain nodes**. Therefore, your orders go through faster than any of the web based platforms
{% endhint %}

### **Security tips🕵️** <a href="#security-tips" id="security-tips"></a>

Once again, our app is safu and you can trust us. But a basic advice is :‌

* **Create a dedicated wallet** for Selenium Bot trades
* Send the the funds you want to trade on Selenium Bot on this wallet

<br>

### Why do I need to enter my private key ?😵 <a href="#why-do-i-need-to-enter-my-private-key" id="why-do-i-need-to-enter-my-private-key"></a>

Solyum needs your private key to be able to create buy/sell orders.

***Below is an example of how we use Web.py to send an approval TX and sign with your key:***

```
transaction = contract.functions.approve(routerAddress, amount
).buildTransaction({
    'gasPrice': Web3.toWei(gas, 'gwei'),
    'gas': 300000,
    'from': Web3.toChecksumAddress(settings['WALLETADDRESS']),
    'nonce': client.eth.getTransactionCount(settings['WALLETADDRESS'])
})
signed_txn = client.eth.account.signTransaction(transaction, private_key=settings['PRIVATEKEY'])
```
