# Run on cloud service

This tool can be hosted on any cloud platform which supports Node.js or Docker.

One caveat is that platforms using ephemeral filesystem(ex. Heroku and Digital Ocean App) are not suitable because this tool stores JSON data and export CSV files.

In this guide, we host on [Render.com](https://render.com/) which is not expensive and friendly for non-developer. With Render.com, We can setup our server without touching Terminal and Editor

1. Sign up or Sign in at <https://render.com/>
2. Select "New Web Service"

![](/files/M7LHZpJyiHhYSbdYV4xn)

&#x20;  3\.  Input <https://github.com/junta/tradingview-alert-connector> to search field and press Enter

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

You can use forked repository from the original source code if you want.

&#x20; 4\. Setup web service as follows

![](/files/B5gmnYGf4JIxCh9D76yL)

If you set up for dYdX, please select one of the regions except for Oregon(US West) at the region field, because dYdX has location restrictions for United States.

{% embed url="<https://help.dydx.exchange/en/articles/4798063-location-restrictions>" %}

* In terms of plans, we need at least Starter plan($7/month) so that we can add [Disk](https://render.com/docs/disks).  (Enter payment information if it is not yet)

![](/files/ph1g6qtaKxoEOIqqolb9)

* Click  "Advanced" accordion and click "Add Secret File" and input as follows

Filename:  .env

File Contents: paste environment variables that you created in [this guide](/docs/setup/run-on-local-pc.md#environment-variables) but values must be replaced with mainnet ones.

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

Copy and paste the below code and fill in your values.

#### Environment Variables

**Required Variables**

* dYdX v4

```
DYDX_V4_MNEMONIC=
```

* Perpetual Protocol

```
PERPETUAL_PRIVATE_KEY=
```

* GMX v2

```
GMX_PRIVATE_KEY=
GMX_LEVERAGE=
```

* Bluefin

```
BLUEFIN_MNEMONIC=
```

* Hyperliquid

```
HYPERLIQUID_PRIVATE_KEY=
```

Optional Variables(common for all exchanges)

```
TRADINGVIEW_PASSPHRASE=
SENTRY_DNS=
```

* Click "Add Disk" and input as follows

Name: any string you want

Mount Path: /app/data

Size: 1GB is enough

![](/files/0oStKLxC0Vt4Wl2wrXCK)

At the Auto deploy field, if we set it to yes, [render.com](http://render.com/) automatically deploys changes to your service when I or someone push to this Github repository. I recommend setting them to **No** because it’s safer and we can also deploy manually

* Leave other fields as default and click "Create Web Service"

&#x20; 5\. Automatically start deployment and wait until it's done

&#x20; 6\. After deployment is done, access to `your endpoint URL + /accounts` (In the below case, <https://dydx-tradingview.onrender.com/accounts>)

![](/files/VyrsivU8l2FhELdInq8B)

If you see a status message of your set up on your browser, the server is running properly.

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

Use this endpoint as Webhook URL when you set strategy alert on Tradingiview.

&#x20; 7\. Go to [this guide](/docs/setup/set-tradingview-strategy-alert.md) to set strategy alerts on Tradingview

In addition, we highly recommend setting up two-factor authentication on Render.com

<figure><img src="/files/cKvtnR8qQYi55brkOIuV" alt=""><figcaption><p>Account Setting > Security</p></figcaption></figure>

### Running on other Docker hosting services

Dockerfile and docker-compose.yml are included in the source code.&#x20;

So just start up by

```
docker-compose build
docker-compose up -d
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://tv-connector.gitbook.io/docs/setup/run-on-cloud-service.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
