התשובה היא פשוטה - למלך הטכנו מטסלה יש היסטוריה של השפעה על שווקי הצפנה בכל פעם שהוא מצייץ עליהם, עד למצב שכמעט צפויה תנועה בשוק כשהוא מרים הוא טלפון ומתחיל להביע את דעתו על טכנולוגיית בלוקצ'יין באמצעות טוויטר.
על ידי יצירת בוט למסחר בקריפטו שקונה ביטקוין בכל פעם שבוס טסלה מצייץ עליו, אתה יכול להיות סמוך ובטוח שאתה הולך לתפוס מושב VIP ברקטה שיקלע ממש מעבר לירח ויעשה את דרכו ישירות למאדים, שם אלון. מבלה את מרבית חודשי הקיץ בשל מזג האוויר הקר והאקלים היבש.
התשובה המהירה היא "לא בטוח" - מכיוון שאף אחד לא בדק את האסטרטגיה הזו בעבר. התשובה הארוכה יותר היא ככל הנראה - כל עוד אנחנו מדברים על ביטקוין. מבחינה סטטיסטית, ללא קשר למועד בו קניתם את הביטקוין שלכם, סביר להניח שרווחתם (למעט השיא האחרון בכל הזמנים בזמן הכתיבה).
אז אם שום דבר אחר, תוכלו לפחות לתבל את אסטרטגיית ה- BTC HODLing שלכם בעזרת מעט עזרה מאלון. מאמר זה לא יעבור לניתוח מפורט כדי להראות האם אסטרטגיה זו אכן עובדת או לא. מאמר זה עוסק בבנייתו בכיף, אך הוא משמש כתזכורת רבת עוצמה לכמה משאבים העומדים לרשותנו וכי תוכלו לבנות כמעט כל בוט למסחר בקריפטו שתעלה על דעתכם.
תוכל גם לראות את הקוד ולהשתמש בו כדי שתוכל לבדוק אותו או לשפר אותו.
במה שמאמר זה מתמקד הוא הבניין הטכני בפועל של בוט המסחר בביטקוין, וכיצד להגדיר אותו בסביבת בדיקה בטוחה, אז בואו נגיע אליו.
- חשבון MetaTrader5
- חשבון הדגמה עם XBTFX כדי שתוכלו לבדוק בבטחה את האסטרטגיה שלכם
- חשבון Dev Twitter
- חשבון API של Tweepy
כפי שהשם מרמז, MT5 היא פלטפורמה שתומכת במספר ברוקרים יחד עם ניתוח טכני מפורט - הסיבה העיקרית להתחיל את מסע בניית הבוט הקריפטו שלך עם MT5 נובעת משילוב קל עם Python ותמיכה מחוץ לקופסה עבור הדגמה או חשבון וירטואלי כדי שתוכלו לבדוק בסביבת הדגמה בטוחה.
ישנן הוראות מפורטות כיצד להתקין ולהגדיר את MetaTrader5 כמו גם את מתווך הצפנה XBTFX בפוסט הקודם המכסה כיצד לבנות בוט למסחר בקריפטו בפייתון, לכן נעבור רק בקצרה על השלבים הבאים במאמר זה. אם אתה זקוק למידע נוסף כיצד לעשות זאת, וכן מדוע נבחרו שתי הפלטפורמות, אנא חזור למאמר המקושר לעיל.
התחל בהורדה והתקנה MetaTrader5 וליצור חשבון בפלטפורמה שלהם. הדבר הבא שאתה צריך הוא מתווך שתוכל לבצע איתו עסקאות - אני ממליץ XBTFX מכיוון שהם מציעים את זוגות הצפנה ביותר מכל המתווכים העובדים עם מסוף MT5. הירשם ב- XBTFX וצור חשבון הדגמה.
כעת תוכל להתחבר לחשבון ההדגמה שלך באמצעות MT5 על ידי ניווט אל קובץ> פתיחת חשבון וחיפוש XBTFX. אם נרשמת באמצעות קישור ההפניה שלמעלה תצטרך לבחור באפשרות "התחבר לחשבון קיים", אחרת המשך ליצור חשבון חדש.
2. 4 DO ו- 3 DON'T להכשרת מודל NLP של Chatbot
לפני שתוכל להשתמש ב- API של טוויטר או במודול ה- Tweepy Python, אתה זקוק לחשבון מפתח עם Twitter. למרבה המזל תהליך הגשת הבקשה מהיר וקל, וכנראה שתתקבל כל עוד תתאר מדוע אתה זקוק לגישה ל- API של Twitter.
יליד אל פלטפורמת dev של twitter ולחץ על החל בפינה השמאלית העליונה של תפריט הניווט.
בעמוד הבא לחץ על הגש בקשה לחשבון מפתח ותתבקש להיכנס באמצעות חשבון הטוויטר שלך.
עקוב אחר תהליך ההרשמה והסבר את כוונותיך באמצעות ה- API
לאחר שתסיים את כל המידע הדרוש, ייתכן שיחלוף בין מספר שעות ליומיים עד שתוכל לקבל גישה לפלטפורמה. מניסיוני זה היה רק כמה שעות.
לאחר שחשבון ה- dev שלך מוכן נווט אל הכרטיסייה פרויקטים ואפליקציות, פתח את Project 1, אם זה לא זמין קדימה וצור חשבון. תחת הפרויקט שלך עבור אל מפתחות ואסימונים וצור את הפעולות הבאות (הקפד לשמור אותם או שתצטרך לחדש את המפתחות!):
- הבוט יפתח עמדת קנייה בביטקוין בכל פעם שאלון מזכיר את הביטקוין בציוץ שלו
- קח רווח מוגדר ל -10% והפסד ל -5%
- בוט הביטקוין לא יבצע עסקאות נוספות אם כבר יש עסקאות (ניתן להתאים)
ראשית עליך לייבא את המודולים MetaTrader5 ו- Tweepy באמצעות PyPi.
pip להתקין
pip להתקין את MetaTrader5
pip install - שדרג את MetaTrader5
השלב הבא הוא לייבא מודולים אלה יחד עם כמה אחרים למתורגמן של פייתון.
# מודול מגרד טוויטר
יבוא טוויפי
מ- OAuthHandler מייבא מודול # תאריכים
מ- datetime ייבוא datetime, תאריך
מספירת יבוא itertools
ייבוא זמן יבוא מחדש מסוף מסחר #
ייבא את MetaTrader5 כ- mt5
כעת עלינו לאחסן את המפתחות והאסימונים הסודיים שיצרתם באמצעות פלטפורמת Dev Dev כדי להשתמש בהם עם Tweepy.
# שמור אישורי טוויטר מחשבון dev
consumer_key = "CONSUMER_KEY"
consumer_secret = "CONSUMER_SECRET"
access_key = "API_KEY"
access_secret = "API_SECRET"# העבר אישורי טוויטר לטוויפ באמצעות OAuthHandler שלו
auth = tweepy.OAuthHandler (צרכן מפתח, צרכן_סוד)
auth.set_access_token (access_key, access_secret)
api = tweepy.API (auth)
בחלק האחרון של ההקמה הראשונית עליך להתחבר למסוף MT5, לאחסן את ההון של חשבונך ולהגדיר את מכשיר המסחר שאיתו נעבוד - במקרה זה מדובר בביטקוין. ניצור גם רשימה קצרה של מילות מפתח לשאילתת הציוץ האחרון של אילון.
# התחבר לחשבון הסחר מבלי לציין סיסמה ושרת
mt5.initialize ()מספר חשבון בפינה השמאלית העליונה של חלון מסוף MT5
# סיסמת מסד הנתונים של המסוף מוחלת אם נתוני החיבור מוגדרים להיזכר
חשבון_מספר = 555
מורשה = mt5.login (חשבון_מספר)אם מורשה:
הדפס (f 'מחובר לחשבון מספר {account_number}')
else
הדפס (נכשל בהתחברות בחשבון מספר {account_number}, קוד שגיאה: {mt5.last_error ()} ')# אחסן את ההון העצמי של חשבונך
account_info = mt5.account_info ()
אם account_info אינו:
העלה את RuntimeError ('לא ניתן לטעון את רמת ההון העצמי של החשבון.')
else
הון = צף (חשבון_מידע [10])
עכשיו בואו נגדיר את המטבע שעליו נבצע עסקאות ואת מילות המפתח שנחפש.
#crypto סימן ומילות מפתח
CRYPTO = 'BTCUSD'
מילות מפתח = ['Bitcoin', 'bitcoin', 'BITCOIN', 'btc', 'BTC']
עם כל הדברים הראשוניים מהדרך, הגיע הזמן להתמקד בחלקים המגניבים של הבוט הזה. נתחיל בקבלת הציוץ האחרון של אילון עם טוויפי, כפי שמוצג להלן ב get_elons_tweet () פונקציה.
במהלך הבדיקה, אמוג'ים ותווים לא חוקיים אחרים ישברו את הסקריפט, כך שכל ציוץ מעוצב מחדש כך שהוא יכיל רק תווים אלפא-מספריים.
הציוץ האחרון של # Get Technoking
def get_elons_tweet ():
"" "קבל את הציוץ האחרון של אילון לפי מזהה משתמש - נסה שוב עד שהטוויפי יחזיר את הציוץ" ""
ציוצים = tweepy.Cursor (api.user_timeline, id = ”44196397", since = date.today (), tweet_mode = 'מורחב'). פריטים (1)# הסר את כל התווים הלא חוקיים
elons_last_tweet = [re.sub ('[^ A-Za-z0–9] +', '', tweet.full_text) לציוץ בציוצים]# נסה מחדש עד שהוא מחזיר ערך - ממשק ה- API של tweepy לא מצליח להחזיר את הציוץ לפעמים
אמנם לא elons_last_tweet:
ציוצים = tweepy.Cursor (api.user_timeline, id = ”44196397", since = date.today (), tweet_mode = 'מורחב'). פריטים (1)
elons_last_tweet = [re.sub ('[^ A-Za-z0–9] +', '', tweet.full_text) לציוץ בציוצים]
החזר elons_last_tweet [0]
כעת, כשיש לנו את הציוץ האחרון של אילון, נוכל להתחיל להכין את ההיגיון ואת בקשת המסחר בתפקוד סַחַר(). למידע נוסף אודות פורמט בקשת הסחר, עיין בתיעוד של MT 5.
מה_מוסק_ אמר מכיל את הציוץ האחרון וההיגיון יבדוק אם אחת ממילות המפתח שהוגדרו שלנו מילות מפתח משתנה לעיל נמצאים בציוץ של אילון. אם זה נכון, בוט המסחר בביטקוין יבצע הזמנת קנייה בביטקוין עם ביצוע מיידי. במקרה שזה שקר הוא פשוט יחזיר לנו את הציוץ.
# קנו ביטקוין
def trade ():
"" "בדוק אם מאסק הזכיר את הביטקוין ופתח עמדת קנייה אם כן" ""
what_musk_said = get_elons_tweet ()# משמש כדי לבדוק אם כבר הוצבה משרה
עמדות = mt5.positions_get (סמל = CRYPTO)
הזמנות = mt5.orders_get (סמל = CRYPTO)
symbol_info = mt5.symbol_info (CRYPTO)
מחיר = mt5.symbol_info_tick (CRYPTO). הצעה# בצע בדיקת לוגיקה
אם בכלל (מילת מפתח במה_מוסק_אמור למילת מפתח במילות מפתח):
הדפס (המדדל אמר את זה - קונה כמה! ')# הכינו את בקשת הסחר
אם לא mt5.initialize ():
העלה את RuntimeError (f'MT5 אתחול () נכשל עם קוד השגיאה {mt5.last_error ()} ')# בדוק שאין עמדות או הזמנות פתוחות
אם len (עמדות) == 0 ו- len (הזמנות) <1:
אם symbol_info אינו:
הדפס (f '{CRYPTO} לא נמצא, לא יכול להתקשר order_check ()')
mt5.shutdown ()# אם הסמל אינו זמין ב- MarketWatch, הוסף אותו
אם לא symbol_info.visible:
הדפס (f '{CRYPTO} אינו גלוי, מנסה להפעיל')
אם לא mt5.symbol_select (CRYPTO, נכון):
הדפס ('symbol_select ({}}) נכשל, יציאה', CRYPTO)# זה מייצג 5% הון עצמי. הזמנה מינימלית היא 0.01 BTC. הגדל את נתח ההון אם קוד הקוד = 10014
הרבה = צף (עגול (((הון עצמי / 5) / מחיר), 2))# הגדירו עצור הפסד וקחו רווח
sl = מחיר - (מחיר * 5) / 100
tp = מחיר + (מחיר * 10) / 100
בקשה = {
'פעולה': mt5.TRADE_ACTION_DEAL,
'סמל': CRYPTO,
'נפח': הרבה,
'סוג': mt5.ORDER_TYPE_BUY,
'מחיר': מחיר,
'sl': sl,
'tp': tp,
'קסם': 66,
'comment': 'buy python',
'סוג_זמן': mt5.ORDER_TIME_GTC,
'מילוי סוג': mt5.ORDER_FILLING_IOC,
}# שלח בקשת מסחר
תוצאה = mt5.order_send (בקשה)# בדוק את תוצאת הביצוע
הדפס (f'1. order_send (): מאת {CRYPTO} {lot} הרבה ב- {price} ')אם result.retcode! = mt5.TRADE_RETCODE_DONE:
הדפס (f'2. order_send נכשל, קוד קוד = {result.retcode} ')# הדפס את תוצאת ההזמנה - כל דבר אחר מלבד קוד קידוד = 10009 הוא שגיאה בבקשת המסחר.
הדפס (ב'2. הזמנה_שלח בוצע, {תוצאה} ')
הדפס (f 'פתח מיקום עם POSITION_TICKET = {result.order}')else
הדפס (איתור f'BUY זוהה, אך ל- {CRYPTO} יש {len (עמדות)} סחר פעיל ')else
הדפס (אם הוא לא אמר את זה, הוא אמר: {what_musk_said} ')
כעת עלינו להחליט באיזו תדירות אנו צריכים לחזור דרך הקוד שלמטה. כברירת מחדל, היא מושכת ומנתחת את הציוץ האחרון של אילון אחת לחמש שניות, אך ניתן להתאים זאת ב זמן שינה פונקציה למטה.
# בצע קוד כל 5 שניות
אם __name__ == '__main__':
הדפס ('לחץ על Ctrl-C / Ctrl-Q כדי לעצור.')
עבור אני בספירה ():
סַחַר()
הדפס (f'Iteration {i} ')
זמן. שינה (5)
זו הייתה עבודה מהנה בפרויקט ואני מקווה שנהנית ממאמר זה. אנא עקוב אחרי אם נהנית ממאמר זה. לפרויקטים נוספים של בוט קריפטו, עיין בבלוג שלי לקבלת מידע נוסף בוטים למסחר במטבעות קריפטוגרפיים בפייתון
- &
- גישה
- חֶשְׁבּוֹן
- פעיל
- AI
- תעשיות
- אנליזה
- API
- בקשה
- אפליקציות
- סביב
- מאמר
- קצת
- ביטקוין
- המסחר bitcoin
- blockchain
- טכנולוגיה
- בלוג
- בוט
- בוטים
- ברוקר
- ברוקרים
- BTC
- לִבנוֹת
- בִּניָן
- לִקְנוֹת
- לקנות bitcoin
- קנייה
- שיחה
- היאבקות
- chatbot
- chatbots
- קוד
- מטבע
- זוג
- יוצרים
- אישורים
- קריפטו
- שוקי
- המסחר הצפנה
- מטבע מבוזר
- מסחר cryptocurrency - -
- נתונים
- מסד נתונים
- dev
- מפתח
- DID
- סביבה
- הון עצמי
- EU
- EV
- הוצאת להורג
- EY
- להתמקד
- לעקוב
- פוּרמָט
- כֵּיף
- פונקציה
- גָבוֹהַ
- היסטוריה
- איך
- איך
- HP
- hr
- HTTPS
- ia
- להגדיל
- מידע
- השתלבות
- IP
- IT
- מפתחות
- המלך
- Kx
- האחרון
- רמה
- קשר
- רשימה
- לִטעוֹן
- ארוך
- שוק
- שוקי
- מַאְדִים
- בינוני
- אזכורים
- חודשים
- ירח
- MT
- ניווט
- NLP
- הַצָעָה
- לפתוח
- דעות
- להזמין
- הזמנות
- אחר
- אחרים
- סיסמה
- פלטפורמה
- פלטפורמות
- להציג
- מחיר
- להרוויח
- פּרוֹיֶקט
- פרויקטים
- פיתון
- RE
- הפנייה
- הַרשָׁמָה
- לדווח
- משאבים
- REST
- החזרות
- בטוח
- סט
- שיתוף
- קצר
- פָּשׁוּט
- לִישׁוֹן
- So
- התחלה
- חנות
- אִסטרָטֶגִיָה
- קיץ
- תמיכה
- תומך
- מתג
- מערכת
- מדבר
- טכני
- ניתוח טכני
- טכנולוגיה
- טסלה
- מבחן
- בדיקות
- המיזמים
- זמן
- מטבעות
- חלק עליון
- סחר
- עסקות
- מסחר
- מסחר בוטים
- הדרכה
- מגמות
- ציוץ
- us
- ערך
- וירטואלי
- תיק עבודות
- עובד
- כתיבה