暗号通貨交換機を自動化するテレグラムボット

序文の代わりに

この記事では、世界中のあらゆるデバイスから24時間年中無休でトランザクションを管理する機能を備えた半自動暗号通貨交換機を作成するために移動する方向を一般的に概説します。実装の詳細はここにはありません。むしろ、この資料は、そのようなスタートアップを立ち上げるために必要な基本的な知識を提供することを目的としています。





半自動暗号通貨交換機。

昔々、私はテレグラムボット使用していくつかのプロセスを自動化することについて少し書きましたかなりの時間が経過したと言わざるを得ませんが、その小さな資料で提示されたアイデアのいくつかを引き続き使用します。





今日の暗号通貨交換はもはや単なる現実ではなく、ある程度はすでに必要とされています。時間は冷酷であり、今やデジタルゴールドは何百万もの人々の資産の非常に重要な部分になりつつあります。インターネットにはいくつかの種類の交換機があり、その主なものは次のとおりです。





  • 半自動





  • マニュアル





  • 自動





  • p2p-交換器





  • 交換





これはかなり単純で便利な方法であるため、p2p交換器に拡張する機能を備えた半自動オプションについて説明します。





必要なスキルセット。

, . , , , . , . :





  1. Linux, zsh, vim, systemd







  2. nginx, ssl







  3. ES6, Material Ui, React, eslint, webpack, scss







  4. python3, asyncio, aiohttp, peewee







  5. postgresql







  6. telegram bot api







  7. docker







:





  1. MVC



    -





  2. Abstract Factory, Factory Method, Builder, Facade, Prototype



    -





  3. Scheduler



    -





  4. Event Listner, State



    - ,





  5. Proxy



    -





, , . , , .





- , , , - . .. , , , : . , ( ) - ?





, . - , , . Single Page Application, , json-rpc



. tcp,



http.







. Node Package Manager



, , react router,



eslint



, node-sass



css



, webpack



.





- . - . stateless. redux



- , .





, , . , react



material ui



. - , , - .





, :





- ,

. P2P , , . , . , , .





asyncio



, . , . BTC/USD USD/RUB, , . get



, coinbase, kraken, bitmex. aiohttp client



:





, , , - , - , , .





- BaseModel, , , created_at, updated_at , , datetime_serializer, , :





API KEY, blockchain.com. , " ". ? , , . - , . , . , . , , . . callback_url, . webhook url



. . , , . , BTC . , BTC, .





, master wallet, , . . :





, . , , ( ) blockchain.



Billing



Processing,



.





: , , , . : .





Telegram bot

. @BotFather, , , ( - , ).





, rpc



, .





, . ( ). , .





, message



callback_query



(reply inline ).





, . race condition, - , atomic_db_query







async with objects.atomic() as atomic_db_query:
	try:
  	pass  # some database change
  except:  
		atomic_db_query.rollback()
      
      



- .. , , , . , subscription



, , :





, , . 24/7 , , , :





production

, , CI-CD, .





, , ipython



:





nginx



, , mod_rewrite



.





location = /api/rates/rates.xml {
  rewrite .* /api/rates/ last;
}   
      
      



, xml , rewrite



.





- - Basic Auth



bootstrap admin template



. :





, , , , , . JWT



, SLL



, CORS



, , . , . , , . - . . , - .





誰かがこの情報がお役に立てば幸いです。私は自分の経験とプロセスから得られた経験を少し共有したかっただけです。





さらなる開発は、交換を行うためのp2pプラットフォームとして位置付けられています。ご質問やご提案をいただければ幸いです。お時間をいただき、誠にありがとうございます。








All Articles