Cara membuat trading bot Anda sendiri

Penulis:Kebaikan, Dibuat: 2019-03-16 10:29:22, Diperbarui: 2019-03-16 10:29:54

Pengantar

Saya tentu saja bukan programmer yang hebat, tetapi menulis proyek ini banyak mengajarkan saya (dan membuat saya sibuk). Sebagian besar kode saya dilakukan di FMZ.COM, dan jika saya refactor kode python saya akan menggunakan model yang lebih berorientasi objek.

Apa gunanya? Ini adalah bot arbitrase. Itu berarti bahwa ia menghasilkan uang dari perdagangan perbedaan antara harga pada dua (atau lebih) bursa. Saat ini ia unidirectional dan hanya perdagangan antara Etherdelta dan Bittrex: mereka berbagi sekitar dua puluh pasangan et / token. Berikut adalah diagram untuk menggambarkan bagaimana cara kerjanya:How to make your own trading botKata-kata yang diikuti oleh tanda kurung adalah transaksi ethereum yang memanggil panggilan fungsi kontrak pintar.

Kode

Saya bisa menggunakan editor python platform fmz.com untuk membuat transaksi dan panggilan fungsi dan itu akan cukup mudah. Saya membutuhkan sesuatu yang lebih dapat diandalkan; transaksi yang gagal berarti kehilangan uang. Setiap satu permintaan GET saya membutuhkan jawaban, bahkan jika paket TCP hilang atau webserver di ujung lain turun sementara. Oleh karena itu saya memutuskan untuk mengimplementasikan wrapper API python eterscan saya sendiri dan menggunakan pythereum untuk membuat transaksi dan eterscan untuk menerbitkannya. Saya juga menulis request.get decorator saya sendiri yang merupakan loop sementara yang hanya keluar setelah jawaban memuaskan.

Ini adalah kode yang saya gunakan untuk mengkodekan respon API etherdelta json sebagai hexadecimal, rlp dikodekan, transaksi ethereum (bukan untuk yang lemah hati):How to make your own trading bot

Nilai heksadesimal mentah dalam penutupan di bagian bawah adalah tanda tangan fungsi yang sesuai dengan setiap fungsi. Tanda tangan fungsi berasal dari keccak fungsi dan argumennya. Ini harus dilampirkan ke parameter data transaksi diikuti oleh data yang membentuk argumen. Secara total kode saya sekitar 400 baris panjang dan terkandung dalam 5 file yang berbeda.

Hasilnya

Saya membuat beberapa grafik dari data yang saya log menggunakan pymatplotlib.How to make your own trading bot How to make your own trading bot How to make your own trading bot

Kesimpulan

Secara keseluruhan seluruh proyek ini memakan waktu sekitar dua minggu selama waktu luang saya di sekolah dan itu adalah ledakan di seluruh. saya telah mengambil istirahat dari coding dengan kuat dan saat ini dalam proses perencanaan arbitrase bot v2. versi berikutnya akan mencakup 86 bursa yang berbeda dan banyak pasangan perdagangan.

Ke bulan!


Informasi lebih lanjut