ゼファーネットのロゴ

マスクがそれについてツイートしたときにビットコインを購入するために暗号通貨取引ボットをコーディングする方法

日付:

アンドルー

答えは簡単です。テスラのテクノキングは、暗号市場についてツイートするたびに影響を与えてきた歴史があり、電話をかけて市場の動きがほぼ予想されるまで、電話で意見を述べ始めています。ツイッター上のブロックチェーンテクノロジー。

テスラのボスがそれについてツイートするたびにビットコインを購入する暗号取引ボットを作成することで、月を過ぎてスリングショットし、エロンがいる火星に直接向かうロケットのVIPシートをキャッチするので安心できます寒い気候と乾燥した気候のため、夏のほとんどの月を過ごします。

簡単な答えは「わからない」です—これまで誰もこの戦略をテストしていなかったからです。 私たちがビットコインについて話している限り、より長い答えはおそらくです。 統計的に言えば、ビットコインを購入した時期に関係なく、利益を得る可能性が最も高いです(執筆時点での最近の過去最高を除く)。

したがって、他に何もないとしても、Elonの少しの助けを借りて、少なくともBTCHODLing戦略にスパイスを加えることができます。 この記事では、この戦略が実際に機能するかどうかを示す詳細な分析については説明しません。 この記事は楽しみのためにそれを構築することについてですが、それは私たちが自由に使えるリソースの数とあなたが考えることができるほぼすべての暗号取引ボットを構築できることを強力に思い出させるのに役立ちます。

また、コードを表示して使用できるため、テストや改善を行うことができます。

この記事が焦点を当てているのは、ビットコイン取引ボットの実際の技術的構築と、安全なテスト環境でそれをセットアップする方法です。それでは、それに取り掛かりましょう。

  • MetaTrader5アカウント

名前が示すように、MT5は、詳細なテクニカル分析とともに複数のブローカーをサポートするプラットフォームです。MT5で暗号ボット構築の旅を始める主な理由は、Pythonとの統合が簡単で、すぐにサポートできるためです。安全なデモ環境でテストできるように、デモまたは仮想アカウント。

MetaTrader5とXBTFX暗号ブローカーをインストールして構成する方法の詳細な手順は、以下をカバーする前の投稿にあります Pythonで暗号取引ボットを構築する方法したがって、この記事ではこれらの手順について簡単に説明します。 それを行う方法、およびこれらXNUMXつのプラットフォームが選択された理由の詳細が必要な場合は、上記のリンクされた記事を参照してください。

ダウンロードしてインストールすることから始めます MetaTrader5 プラットフォームにアカウントを作成します。 次に必要なのは、取引を行うことができるブローカーです—私はお勧めします XBTFX MT5端末で動作するすべてのブローカーの中で最も多くの暗号ペアを提供するためです。 XBTFXに登録し、デモアカウントを作成します。

これで、[ファイル]> [アカウントを開く]に移動してXBTFXを検索することにより、MT5経由でデモアカウントに接続できます。 上記の紹介リンクを使用して登録した場合は、「既存のアカウントに接続」を選択する必要があります。それ以外の場合は、新しいアカウントの作成に進みます。

1.チャットボットトレンドレポート2021

2.チャットボットNLPモデルをトレーニングするための4つのすべきことと3つのすべきでないこと

3.コンシェルジュボット:XNUMXつのチャット画面から複数のチャットボットを処理する

4.エキスパートシステム:会話型AIとチャットボット

TwitterのAPIまたはTweepyPythonモジュールを使用する前に、Twitterの開発者アカウントが必要です。 幸いなことに、申請プロセスは迅速かつ簡単であり、TwitterAPIへのアクセスが必要な理由を説明している限りおそらく受け入れられます。

にやる気を起こさせる Twitterの開発プラットフォーム ナビゲーションメニューの右上隅にある[適用]をクリックします。

次のページで[開発者アカウントの申請]をクリックすると、Twitterアカウントでサインインするように求められます。

登録プロセスに従い、APIを使用して意図を説明します

必要な情報をすべて入力した後、プラットフォームにアクセスできるようになるまでに数時間から数日かかる場合があります。 私の経験では、それはほんの数時間でした。

開発アカウントの準備ができたら、[プロジェクトとアプリ]タブに移動し、[プロジェクト1]を開きます。これが利用できない場合は、先に進んで作成します。 プロジェクトの下で、キーとトークンに移動し、以下を生成します(必ず保存してください。そうしないと、キーを再生成する必要があります!):

  • イーロンがツイートでビットコインに言及するたびに、ボットはビットコインの購入ポジションを開きます

まず、PyPiを使用してMetaTrader5モジュールとTweepyモジュールをインポートする必要があります。

ピップインストールtweepy
pip インストール MetaTrader5
pip install —MetaTrader5をアップグレードします

次のステップは、これらのモジュールを他のいくつかのモジュールと一緒にPythonインタープリターにインポートすることです。

#Twitterスクレイパーモジュール
トゥイーピーをインポート
tweepyからOAuthHandlerをインポートします
#datesモジュール
日時からインポート日時、日付
itertoolsインポートカウントから
インポート時間インポート再
#トレーディングターミナル
MetaTrader5をmt5としてインポートします

Tweepyで使用するには、TwitterDevプラットフォームを使用して生成した秘密鍵とトークンを保存する必要があります。

#開発者アカウントからTwitterのクレデンシャルを保存する
Consumer_key =“ CONSUMER_KEY”
Consumer_secret =“ CONSUMER_SECRET”
access_key =“ API_KEY”
access_secret =“ API_SECRET”
#TwitterのクレデンシャルをOAuthHandlerを介してtweepyに渡します
auth = tweepy.OAuthHandler(consumer_key、c​​onsumer_secret)
auth.set_access_token(access_key、access_secret)
api = tweepy.API(auth)

予備設定の最後の部分では、MT5ターミナルに接続し、アカウントのエクイティを保存し、使用する取引手段を定義する必要があります。この場合はビットコインです。 また、Elonの最後のツイートを照会するためのキーワードの短いリストを作成します。

#パスワードとサーバーを指定せずにトレードアカウントに接続する
mt5.initialize()
#MT5ターミナルウィンドウの左上隅にあるアカウント番号
#接続データが記憶されるように設定されている場合、端末データベースのパスワードが適用されます
アカウント番号 = 555
承認済み= mt5.login(account_number)
許可されている場合:
print(f 'アカウント#{account_number}'に接続)
その他:
print(f 'アカウント#{account_number}で接続に失敗しました、エラーコード:{mt5.last_error()}')
#アカウントの資本を保存する
account_info = mt5.account_info()
account_infoがNoneの場合:
RuntimeError( 'アカウントのエクイティレベルを読み込めませんでした。')
その他:
エクイティ= float(account_info [10])

次に、取引を行うコインと検索するキーワードを定義しましょう。

#cryptoサインとキーワード
CRYPTO = 'BTCUSD'
キーワード= ['ビットコイン'、 'ビットコイン'、 'ビットコイン'、 'btc'、 'BTC']

準備段階がすべて終わったので、このボットのクールな部分に焦点を当てる時が来ました。 以下に示すように、TweepyでElonの最後のツイートを取得することから始めましょう。 get_elons_tweet() 機能。

テスト中に、絵文字やその他の無効な文字がスクリプトを壊す可能性があるため、各ツイートは英数字のみを含むように再フォーマットされます。

#Technokingの最新のツイートを入手
def get_elons_tweet():
「」「ユーザーIDでElonの最後のツイートを取得します—tweepyがツイートを返すまで再試行します」」
ツイート= tweepy.Cursor(api.user_timeline、id =” 44196397 "、since = date.today()、tweet_mode = 'extended')。items(1)
#無効な文字をすべて削除する
elons_last_tweet = [re.sub( '[^ A-Za-z0–9] +'、 ''、tweet.full_text)for tweet intweets]
#re-値が返されるまで試してください— tweepyAPIがツイートを返さないことがあります
elons_last_tweetではありませんが:
ツイート= tweepy.Cursor(api.user_timeline、id =” 44196397 "、since = date.today()、tweet_mode = 'extended')。items(1)
elons_last_tweet = [re.sub( '[^ A-Za-z0–9] +'、 ''、tweet.full_text)for tweet intweets]
elons_last_tweet [0]を返します

Elonの最後のツイートができたので、ロジックと取引リクエストの準備を開始できます。 トレード()。 トレードリクエストのフォーマットの詳細については、MT5のドキュメントをご覧ください。

ムスクが言ったこと 最後のツイートが含まれており、ロジックは、 キーワード 上記の変数は、Elonのツイートにあります。 それが本当なら、ビットコイン取引ボットは即座に実行されてビットコインに買い注文を出します。 それが間違っている場合、それは単に私たちにツイートを返します。

#buyビットコイン
def trade():
「」「ムスクがビットコインについて言及しているかどうかを確認し、言及している場合は購入ポジションを開きます」」
what_musk_said = get_elons_tweet()
#位置がすでに配置されているかどうかを確認するために使用されます
位置= mt5.positions_get(symbol = CRYPTO)
注文= mt5.orders_get(symbol = CRYPTO)
symbol_info = mt5.symbol_info(CRYPTO)
価格= mt5.symbol_info_tick(CRYPTO).bid
#ロジックチェックを実行する
もしあれば(キーワードのキーワードのwhat_musk_saidのキーワード):
print(f '狂人が言った—いくつか買う!')
#トレードリクエストを準備する
mt5.initialize()でない場合:
raise RuntimeError(f'MT5 initialize()failed with error code {mt5.last_error()} ')
#募集中のポジションや注文がないことを確認します
len(positions)== 0およびlen(orders)<1の場合
symbol_infoがNoneの場合:
print(f '{CRYPTO}が見つかりません、order_check()'を呼び出すことができません)
mt5.shutdown()
#シンボルがMarketWatchで使用できない場合は、追加します
symbol_info.visibleでない場合:
print(f '{CRYPTO}が表示されないため、スイッチをオンにしようとしています')
mt5.symbol_select(CRYPTO、True)でない場合:
print( 'symbol_select({}})failed、exit'、CRYPTO)
#これは5%のエクイティを表します。 最小注文は0.01BTCです。 retcode = 10014の場合、エクイティシェアを増やします
lot = float(round(((equity / 5)/ price)、2))
#ストップロスを定義し、利益を得る
sl =価格—(価格* 5)/ 100
tp =価格+(価格* 10)/ 100
リクエスト= {
'アクション':mt5.TRADE_ACTION_DEAL、
「シンボル」:CRYPTO、
「ボリューム」:たくさん、
'type':mt5.ORDER_TYPE_BUY、
「価格」:価格、
'sl':sl、
'tp':tp、
「魔法」:66、
'コメント': 'python-buy'、
'type_time':mt5.ORDER_TIME_GTC、
'type_filling':mt5.ORDER_FILLING_IOC、
}
#取引リクエストを送信する
結果= mt5.order_send(request)
#実行結果を確認する
print(f'1。order_send():by {CRYPTO} {lot} lots at {price} ')
result.retcode!= mt5.TRADE_RETCODE_DONEの場合:
print(f'2。order_sendが失敗しました、retcode = {result.retcode} ')
#注文結果を出力します— retcode = 10009以外は取引リクエストのエラーです。
print(f'2。order_senddone、{result} ')
print(f'POSITION_TICKET = {result.order} 'で開いた位置)
その他:
print(f'BUYシグナルが検出されましたが、{CRYPTO}には{len(positions)}アクティブトレードがあります ')
その他:
print(f '彼はそれを言わなかった、彼は言った:{what_musk_said}')

次に、以下のコードを反復処理する頻度を決定する必要があります。 デフォルトでは、Elonの最後のツイートを5秒ごとにプルして分析しますが、これはで調整できます。 時間.睡眠 以下の機能。

#5秒ごとにコードを実行する
if __name__ == '__ main __':
print( 'Ctrl-C / Ctrl-Qを押して停止します。')
count()のiの場合:
トレード()
print(f '反復{i}')
time.sleep(5)

楽しいプロジェクトでしたので、この記事を楽しんでいただけたでしょうか。 この記事を楽しんだら、私に従ってください。 その他の暗号ボットプロジェクトについては、私のブログで詳細を確認してください Pythonの暗号通貨取引ボット

コインスマート。 BesteBitcoin-ヨーロッパのBörse
Source: https://chatbotslife.com/how-to-code-a-cryptocurrency-trading-bot-to-buy-bitcoin-when-musk-tweets-about-it-bb7c9dc13279?source=rss—-a49517e4c30b—4

スポット画像

最新のインテリジェンス

スポット画像

私たちとチャット

やあ! どんな御用でしょうか?