Skip to content

Latest commit

 

History

History
195 lines (144 loc) · 23.9 KB

File metadata and controls

195 lines (144 loc) · 23.9 KB

ForexSignalBot: AI-संचालित टेलीग्राम फ़ॉरेक्स सिग्नल / टेलीग्राम बॉट ऑटो फॉरवर्डर, स्मार्ट, मुफ़्त और ओपन-सोर्स 📈🤖✨🚀

License GitHub Stars GitHub Forks GitHub Issues GitHub Closed Issues GitHub Pull Requests GitHub Closed Pull Requests Test Coverage Top Language .NET Version Last Commit Commit Activity Code Size Contributors GitHub Repo stars

🚀 अभी शुरू करें!

  • लाइव बॉट: https://t.me/trade_ai_helper_bot
  • बॉट को टेलीग्राम में खोलने और ट्रेडिंग शुरू करने के लिए बस लिंक पर क्लिक करें!

ForexSignalBot Demo

🚀 शुरुआत कैसे करें

आप इस प्रोजेक्ट को दो तरीकों से चला सकते हैं: डॉकर के साथ (त्वरित सेटअप के लिए अनुशंसित) या मैन्युअल रूप से एक स्थानीय वातावरण स्थापित करके।

विकल्प 1: डॉकर के साथ त्वरित शुरुआत (अनुशंसित)

पूरे एप्लिकेशन स्टैक — API, PostgreSQL डेटाबेस, और Redis कैश — को डॉकर के साथ मिनटों में चालू करें। यह शुरू करने का सबसे तेज़ और आसान तरीका है।

पूर्वापेक्षाएँ

चरण 1: रिपॉजिटरी को क्लोन करें

अपना टर्मिनल खोलें और प्रोजेक्ट के स्रोत कोड को क्लोन करें।

git clone https://github.com/Opselon/ForexTradingBot.git
cd ForexTradingBot

चरण 2: अपने सीक्रेट्स को कॉन्फ़िगर करें

एप्लिकेशन को API कुंजियों और पासवर्ड की आवश्यकता होती है। हम इसके लिए एक .env फ़ाइल का उपयोग करते हैं, जिसे निजी रखा जाता है।

  1. पर्यावरण फ़ाइल बनाएँ:

    cp .env.example .env
  2. .env फ़ाइल को संपादित करें: नई .env फ़ाइल खोलें और अपने वास्तविक गुप्त मान भरें।

    • TELEGRAM_BOT_TOKEN: इसे टेलीग्राम पर @BotFather से प्राप्त करें।
    • POSTGRES_PASSWORD: अपने डेटाबेस के लिए एक मजबूत, सुरक्षित पासवर्ड बनाएँ।

चरण 3: एप्लिकेशन चलाएँ! 🔥

डॉकर के चालू होने पर, प्रोजेक्ट की रूट डायरेक्टरी से एक ही कमांड निष्पादित करें:

docker-compose up --build -d

यह कमांड API, PostgreSQL, और Redis कंटेनरों को बनाता है और शुरू करता है। API को स्टार्टअप पर स्वचालित रूप से डेटाबेस माइग्रेशन लागू करने के लिए कॉन्फ़िगर किया गया है।

चरण 4: डेटाबेस में शुरुआती डेटा डालें (Seed)

बॉट को RSS फ़ीड्स की एक प्रारंभिक सूची की आवश्यकता है। DBeaver या DataGrip जैसे क्लाइंट का उपयोग करके डेटाबेस से कनेक्ट करें और Populate_RssSources_Categories.sql स्क्रिप्ट चलाएँ।

  • होस्ट: localhost
  • पोर्ट: 5432
  • डेटाबेस: forexsignalbot_db
  • उपयोगकर्ता: postgres
  • पासवर्ड: वह POSTGRES_PASSWORD जो आपने .env में सेट किया है।

🎉 बस हो गया! आपका बॉट अब डॉकर के अंदर चल रहा है।


विकल्प 2: स्थानीय विकास सेटअप (डॉकर के बिना)

यदि आप एप्लिकेशन को सीधे अपनी मशीन पर चलाना पसंद करते हैं तो इन चरणों का पालन करें।

पूर्वापेक्षाएँ

  1. .NET 9 SDK:

    • .NET 9 SDK (v9.0.107 या बाद का) स्थापित करें।
    • डाउनलोड पृष्ठ: https://dotnet.microsoft.com/en-us/download/dotnet/9.0
    • dotnet --version चलाकर अपनी स्थापना की पुष्टि करें।
  2. PostgreSQL डेटाबेस:

    • एक स्थानीय PostgreSQL सर्वर स्थापित करें और चलाएँ।
    • एक डेटाबेस और एक उपयोगकर्ता बनाएँ।
    • appsettings.Development.json फ़ाइल में अपनी कनेक्शन स्ट्रिंग को अपडेट करें।
  3. Redis सर्वर:

    • Redis का उपयोग कैशिंग और बैकग्राउंड जॉब प्रोसेसिंग के लिए किया जाता है।
    • विंडोज के लिए: Memurai जैसा Redis-संगत सर्वर स्थापित करें।
    • macOS/Linux के लिए: एक पैकेज मैनेजर के माध्यम से स्थापित करें (जैसे, brew install redis या sudo apt-get install redis-server)।

एप्लिकेशन को स्थानीय रूप से चलाना

उन डेवलपर्स के लिए जो एप्लिकेशन को सीधे अपनी मशीन पर चलाना पसंद करते हैं, इन चरणों का पालन करें:

  1. रिपॉजिटरी को क्लोन करें (यदि आपने पहले से नहीं किया है)।
  2. appsettings.Development.json को कॉन्फ़िगर करें अपनी स्थानीय डेटाबेस कनेक्शन स्ट्रिंग और अन्य सेटिंग्स के साथ।
  3. डेटाबेस माइग्रेशन लागू करें:
    dotnet ef database update --startup-project WebApi --project Infrastructure
  4. डेटाबेस को सीड करें अपने स्थानीय डेटाबेस पर Populate_RssSources_Categories.sql स्क्रिप्ट चलाकर।
  5. API चलाएँ:
    dotnet run --project WebApi

अधिक व्यापक विवरण और उत्पादन परिनियोजन निर्देशों के लिए, कृपया समर्पित INSTALL.md गाइड देखें।


🛠️ डेवलपर गाइड

इस अनुभाग में विकास के लिए सामान्य कमांड हैं।

डेटाबेस माइग्रेशन का प्रबंधन

इन कमांड्स को चलाने से पहले, सुनिश्चित करें कि आपके पास EF Core टूल्स स्थापित हैं: dotnet tool install --global dotnet-ef

  • एक नया माइग्रेशन जोड़ें: जब आप एक डोमेन मॉडल बदलते हैं, तो एक नया माइग्रेशन बनाएँ।

    dotnet ef migrations add YourMigrationName --startup-project WebApi --project Infrastructure

    (YourMigrationName को एक वर्णनात्मक नाम से बदलें, जैसे, AddSignalStatus)

  • माइग्रेशन लागू करें: डेटाबेस स्कीमा को मैन्युअल रूप से अपडेट करने के लिए।

    dotnet ef database update --startup-project WebApi --project Infrastructure

एक प्रोडक्शन बिल्ड बनाना

एप्लिकेशन को परिनियोजन के लिए एक स्व-निहित निष्पादन योग्य में संकलित करने के लिए:

# एक स्व-निहित विंडोज x64 बिल्ड के लिए उदाहरण
dotnet publish --configuration Release --runtime win-x64 --self-contained true --project WebApi
  • आउटपुट WebApi/bin/Release/net9.0/win-x64/publish फ़ोल्डर में होगा।

चरण 4: वेब सेटअप विज़ार्ड ✨

यह नई, सुव्यवस्थित सेटअप प्रक्रिया है।

  1. वेब पैनल खोलें: अपने ब्राउज़र में http://localhost:5000/login.html पर नेविगेट करें।
  2. लॉग इन करें: डिफ़ॉल्ट क्रेडेंशियल्स का उपयोग करें:
    • यूज़रनेम: admin
    • पासवर्ड: admin (आपको बेहतर सुरक्षा के लिए वेब UI में पहली बार सेटअप प्रक्रिया के दौरान इन संवेदनशील विवरणों को बदलने के लिए प्रेरित किया जाएगा।)
  3. निर्देशित सेटअप: पहली बार लॉग इन करने के बाद, आपको स्वचालित रूप से एक सुरक्षित सेटअप पृष्ठ (/indexapp.html) पर पुनः निर्देशित किया जाएगा।
    • इस पृष्ठ पर, आपको अपना टेलीग्राम बॉट टोकन और अन्य कोर सेटिंग्स दर्ज करने के लिए प्रेरित किया जाएगा।
    • सिस्टम सहेजने से पहले आपके क्रेडेंशियल्स की वैधता सुनिश्चित करने के लिए लाइव-टेस्ट करेगा।
    • एक बार सहेजे जाने के बाद, ये सेटिंग्स सादे टेक्स्ट फ़ाइलों में नहीं, बल्कि डेटाबेस में सुरक्षित रूप से संग्रहीत की जाती हैं।
  4. डेटाबेस सीडिंग: प्रारंभिक सेटअप के बाद, आपको डेटाबेस को सीड करने के लिए प्रेरित किया जाएगा। वेब UI में "Seed Database" बटन पर क्लिक करें। यह RSS फ़ीड्स और अन्य आवश्यक डेटा की प्रारंभिक सूची को पॉप्युलेट करेगा।

🎉 बस हो गया! आपका बॉट अब पूरी तरह से कॉन्फ़िगर और चल रहा है। आप वेब पैनल से सब कुछ प्रबंधित कर सकते हैं। alt text

🌟 समय के साथ स्टारगेज़र्स

अगर यह प्रोजेक्ट आपके लिए उपयोगी है, तो आप इसे एक 🌟 दे सकते हैं। Stargazers over time


🌍 बहुभाषी README फ़ाइलें 🌍

हम अपने प्रोजेक्ट को दुनिया भर के उपयोगकर्ताओं के लिए सुलभ बनाने के लिए कई भाषाओं में README फ़ाइलें प्रदान करते हैं। नीचे अपनी पसंदीदा भाषा चुनें:

भाषा भाषा कोड README फ़ाइल स्थिति
अंग्रेज़ी 🇺🇸 EN README.md ✅ पूर्ण
रूसी 🇷🇺 RU README_RU.md ✅ पूर्ण
फ़ारसी 🇮🇷 FA README_FA.md ✅ पूर्ण
चीनी 🇨🇳 ZH README_ZH.md ✅ पूर्ण
स्पेनिश 🇪🇸 ES README_ES.md ✅ पूर्ण
फ्रेंच 🇫🇷 FR README_FR.md ✅ पूर्ण
जर्मन 🇩🇪 DE README_DE.md ✅ पूर्ण
तुर्की 🇹🇷 TR README_TR.md ✅ पूर्ण
अरबी 🇸🇦 AR README_AR.md ✅ पूर्ण
हिन्दी 🇮🇳 HI README_HI.md ✅ पूर्ण
इतालवी 🇮🇹 IT README_IT.md ✅ पूर्ण
पुर्तगाली 🇵🇹 PT README_PT.md ✅ पूर्ण

प्रत्येक README फ़ाइल में संबंधित भाषा में अनुवादित संपूर्ण प्रोजेक्ट दस्तावेज़ीकरण, सेटअप निर्देश और सुविधाएँ शामिल हैं। सभी फ़ाइलों को नवीनतम प्रोजेक्ट जानकारी के साथ अद्यतित रखा जाता है।