ForexSignalBot: Segnali Forex per Telegram basati su IA / Inoltro Automatico Intelligente, Gratuito e Open-Source 📈🤖✨🚀
- Bot Live: https://t.me/trade_ai_helper_bot ✨
- Basta cliccare sul link per aprire il bot su Telegram e iniziare a fare trading!
Puoi eseguire questo progetto in due modi: con Docker (consigliato per una configurazione rapida) o configurando manualmente un ambiente locale.
Metti in funzione l'intero stack dell'applicazione — API, database PostgreSQL e cache Redis — in pochi minuti con Docker. Questo è il modo più rapido e semplice per iniziare.
- Docker Desktop: Assicurati che sia installato e in esecuzione sul tuo sistema. Scaricalo qui.
Apri il tuo terminale e clona il codice sorgente del progetto.
git clone https://github.com/Opselon/ForexTradingBot.git
cd ForexTradingBotL'applicazione richiede chiavi API e password. Utilizziamo un file .env per questo scopo, che viene mantenuto privato.
-
Crea il file di ambiente:
cp .env.example .env
-
Modifica il file
.env: Apri il nuovo file.enve inserisci i tuoi valori segreti effettivi.TELEGRAM_BOT_TOKEN: Ottienilo da@BotFathersu Telegram.POSTGRES_PASSWORD: Crea una password forte e sicura per il tuo database.
Con Docker in esecuzione, esegui un singolo comando dalla directory principale del progetto:
docker-compose up --build -dQuesto comando costruisce e avvia i container dell'API, di PostgreSQL e di Redis. L'API è configurata per applicare automaticamente le migrazioni del database all'avvio.
Il bot ha bisogno di un elenco iniziale di feed RSS. Connettiti al database utilizzando un client come DBeaver o DataGrip ed esegui lo script Populate_RssSources_Categories.sql.
- Host:
localhost - Porta:
5432 - Database:
forexsignalbot_db - Utente:
postgres - Password: La
POSTGRES_PASSWORDche hai impostato in.env.
🎉 Fatto! Il tuo bot è ora in esecuzione all'interno di Docker.
Segui questi passaggi se preferisci eseguire l'applicazione direttamente sulla tua macchina.
-
.NET 9 SDK:
- Installa il .NET 9 SDK (v9.0.107 o successiva).
- Pagina di download: https://dotnet.microsoft.com/en-us/download/dotnet/9.0
- Verifica l'installazione eseguendo
dotnet --version.
-
Database PostgreSQL:
- Installa ed esegui un server PostgreSQL locale.
- Crea un database e un utente.
- Aggiorna la tua stringa di connessione nel file
appsettings.Development.json.
-
Server Redis:
- Redis è utilizzato per la cache e l'elaborazione di processi in background.
- Per Windows: Installa un server compatibile con Redis come Memurai.
- Guida all'installazione: https://docs.memurai.com/en/installation.html
- Per macOS/Linux: Installa tramite un gestore di pacchetti (es.
brew install redisosudo apt-get install redis-server).
Per gli sviluppatori che preferiscono eseguire l'applicazione direttamente sulla propria macchina, seguite questi passaggi:
- Clona il repository (se non l'hai già fatto).
- Configura
appsettings.Development.jsoncon la stringa di connessione del tuo database locale e altre impostazioni. - Applica le migrazioni del database:
dotnet ef database update --startup-project WebApi --project Infrastructure
- Popola il database eseguendo lo script
Populate_RssSources_Categories.sqlsul tuo database locale. - Avvia l'API:
dotnet run --project WebApi
Per dettagli più completi e istruzioni di distribuzione in produzione, si prega di fare riferimento alla guida dedicata INSTALL.md.
Questa sezione contiene comandi comuni per lo sviluppo.
Prima di eseguire questi comandi, assicurati di avere installato gli strumenti di EF Core: dotnet tool install --global dotnet-ef
-
Aggiungere una Nuova Migrazione: Quando modifichi un modello di dominio, crea una nuova migrazione.
dotnet ef migrations add TuoNomeMigrazione --startup-project WebApi --project Infrastructure
(Sostituisci
TuoNomeMigrazionecon un nome descrittivo, es.AddSignalStatus) -
Applicare le Migrazioni: Per aggiornare manualmente lo schema del database.
dotnet ef database update --startup-project WebApi --project Infrastructure
Per compilare l'applicazione in un eseguibile autonomo per la distribuzione:
# Esempio per una build autonoma per Windows x64
dotnet publish --configuration Release --runtime win-x64 --self-contained true --project WebApi- L'output si troverà nella cartella
WebApi/bin/Release/net9.0/win-x64/publish.
Questo è il nuovo processo di configurazione semplificato.
- Apri il Pannello Web: Vai su http://localhost:5000/login.html nel tuo browser.
- Login: Usa le credenziali predefinite:
- Nome utente:
admin - Password:
admin(Ti verrà richiesto di modificare questi dati sensibili durante il primo processo di configurazione nell'interfaccia web per una maggiore sicurezza.)
- Nome utente:
- Configurazione Guidata: Dopo aver effettuato l'accesso per la prima volta, verrai reindirizzato automaticamente a una pagina di configurazione sicura (
/indexapp.html).- In questa pagina, ti verrà richiesto di inserire il tuo Token del Bot di Telegram e altre impostazioni fondamentali.
- Il sistema testerà in tempo reale le tue credenziali per assicurarsi che siano valide prima di salvarle.
- Una volta salvate, queste impostazioni vengono memorizzate in modo sicuro nel database, non in file di testo.
- Popolamento del Database: Dopo la configurazione iniziale, ti verrà chiesto di popolare il database. Clicca sul pulsante "Seed Database" nell'interfaccia web. Questo popolerà l'elenco iniziale di feed RSS e altri dati necessari.
🎉 Fatto! Il tuo bot è ora completamente configurato e funzionante. Puoi gestire tutto dal pannello web.

Se questo progetto ti è utile, potresti dargli una 🌟
Forniamo file README in più lingue per rendere il nostro progetto accessibile agli utenti di tutto il mondo. Scegli la tua lingua preferita qui sotto:
| Lingua | Codice Lingua | File README | Stato |
|---|---|---|---|
| Inglese | 🇺🇸 EN | README.md | ✅ Completo |
| Russo | 🇷🇺 RU | README_RU.md | ✅ Completo |
| Persiano | 🇮🇷 FA | README_FA.md | ✅ Completo |
| Cinese | 🇨🇳 ZH | README_ZH.md | ✅ Completo |
| Spagnolo | 🇪🇸 ES | README_ES.md | ✅ Completo |
| Francese | 🇫🇷 FR | README_FR.md | ✅ Completo |
| Tedesco | 🇩🇪 DE | README_DE.md | ✅ Completo |
| Turco | 🇹🇷 TR | README_TR.md | ✅ Completo |
| Arabo | 🇸🇦 AR | README_AR.md | ✅ Completo |
| Hindi | 🇮🇳 HI | README_HI.md | ✅ Completo |
| Italiano | 🇮🇹 IT | README_IT.md | ✅ Completo |
| Portoghese | 🇵🇹 PT | README_PT.md | ✅ Completo |
Ogni file README contiene la documentazione completa del progetto, le istruzioni di configurazione e le funzionalità tradotte nella rispettiva lingua. Tutti i file sono mantenuti aggiornati con le ultime informazioni del progetto.
