Robot strategi frekuensi tinggi Bitcoin sederhana pada tahun 2014

Penulis:Rumput, Tanggal: 2014-10-21 22:58:44
Tag:Frekuensi tinggi

Penjelasan tentang strategi

Di sini, Anda dapat melihat foto-foto yang dibuat oleh seorang wanita.https://www.fmz.com/strategy/1088Strategi ini adalah strategi utama saya sejak saya membuat mata uang virtual, setelah terus disempurnakan dan dimodifikasi, banyak yang rumit, tetapi ide utama tidak berubah, versi yang dibagikan ini adalah versi awal tanpa bug yang jelas, paling sederhana dan jelas, tidak ada manajemen posisi, setiap transaksi penuh, tidak ada kartu mati yang dihidupkan kembali, dll, tetapi juga cukup menjelaskan masalah. Strategi ini berjalan dari bulan Agustus 2014 hingga awal tahun ini. Operasi berjalan dengan baik dan tidak banyak kerugian. Dana berjalan dari $ 200 awal ke $ 80 Bitcoin. Proses spesifik dapat dilihat.Blog Sinah dari GrassDi siniJalan menuju transaksi otomatisasi mata uang virtualArtikel-artikel dalam seri ini.

Mengapa berbagi strategi ini?

1. setelah bursa menagih biaya, hampir semua strategi frekuensi tinggi mati, tidak terkecuali saya. 2. Sudah lama tidak berbagi, artikel ini sudah lama saya tulis. 3. Bertukar pengetahuan dan belajar bersama.

Prinsip Strategi

Strategi ini sangat sederhana dan dapat dipahami sebagai strategi pasar frekuensi tinggi, Anda mungkin ingin memukul seseorang setelah melihat, ini bisa menghasilkan uang, dan hampir semua orang bisa menulisnya. Saya juga tidak mengharapkannya untuk menjadi sangat efektif, tampaknya ada ide dalam pikiran untuk segera mempraktikkan, mengatakan tidak selalu ada kejutan. Seperti semua strategi frekuensi tinggi, strategi ini juga didasarkan pada buku pesanan, dan gambar di bawah ini adalah distribusi pesanan dari bursa Bitcoin yang khas.imgAnda dapat melihat di sebelah kiri adalah pembayaran, menunjukkan jumlah pesanan yang dipegang dengan harga yang berbeda, di sebelah kanan adalah pesanan jual. Anda dapat membayangkan jika seseorang ingin membeli bitcoin, jika tidak ingin menunggu pesanan, hanya dapat memilih untuk membeli, jika jumlahnya lebih banyak, akan membuat banyak transaksi pesanan jual, menyebabkan kejutan pada harga, tetapi kejutan ini umumnya terus berlanjut, dan ada yang tidak ingin membeli pesanan jual, harga kemungkinan besar akan pulih dalam waktu yang sangat singkat, dan sebaliknya memahami bahwa ada yang ingin menjual koin serupa juga. Sebagai contoh, jika seseorang membeli 5 koin secara langsung, maka harga akan mencapai 10.377, sedangkan jika seseorang menjual 5 koin secara langsung, maka harga akan mencapai 10.348, ruang ini adalah ruang keuntungan. Strategi akan mencatatkan harga yang sedikit lebih rendah dari 10.377, seperti 10.376.99, dan membeli dengan harga yang sedikit lebih tinggi dari 10.348, seperti 10.348.01, yang jelas akan menghasilkan selisih jika hal yang baru saja terjadi. Dengan parameter strategi saat ini, mari kita jelaskan operasi spesifik, parameter ini tentu saja tidak dapat digunakan, hanya sebagai penjelasan. Ini akan mencari ke atas harga dari jumlah pesanan yang ditempelkan 8 sen, di sini adalah 10377, maka harga jual saat ini adalah harga ini dikurangi 0.01 (mengurangi berapa banyak bisa acak), sama seperti mencari ke bawah pesanan yang ditempelkan 8 sen, di sini adalah 10348, maka harga jual saat ini adalah 10348.01, pada saat ini perbedaan harga jual adalah 10376.99-10348.01 = 28.98, lebih besar dari perbedaan harga yang diprediksi oleh strategi 1.5, sehingga jika kedua harga yang ditempelkan dilakukan, harga yang berbeda kurang dari 1.5, maka akan mencari harga untuk memotong pesanan, seperti harga percetakan 10, ditambah lubang menunggu (yang sesuai harus terus mencari lebih banyak kedalaman).

Informasi lebih lanjut

  1. Apa yang harus dilakukan tanpa uang atau koin? Situasi ini sangat umum ketika saya memiliki sedikit uang, sebagian besar waktu hanya menggantung di satu sisi, tetapi bukan masalah besar. Sebenarnya dapat dimasukkan ke dalam logika keseimbangan uang, tetapi dalam proses keseimbangan pasti akan terjadi kerugian, setelah semua transaksi adalah spekulasi probabilitas, saya memilih untuk tetap menunggu transaksi secara sepihak, tentu saja ini juga membuang peluang transaksi di sisi lain.
  2. Bagaimana posisinya dikelola? Pada awalnya, pembelian dan penjualan penuh, kemudian dibagi menjadi kelompok yang berbeda berdasarkan parameter yang berbeda, tidak akan sepenuhnya selesai sekaligus.
  3. Tidak ada penghentian? Strategi memiliki logika yang lengkap untuk membeli dan menjual, saya pikir tidak perlu stop loss (bisa diperdebatkan), dan ada juga prospek probabilitas, transaksi adalah kesempatan, stop loss sayangnya.
  4. Bagaimana cara mengubah strategi menjadi koin? Parameter saat ini adalah simetris, yaitu surat penjualan kumulatif 8 koin ke atas, pembayaran kumulatif 8 koin ke bawah, sedikit tidak seimbang, seperti mengubah surat penjualan kumulatif 15 koin ke atas, membuat kesempatan menjual koin lebih sulit, ada peluang yang lebih besar akan datang kembali dengan harga yang lebih rendah, sehingga akan koin, dan pada gilirannya menghasilkan uang.

Pengertian Kode

Kode lengkapnya dapat dilihat di www.fmz.com, di mana saya hanya menjelaskan fungsi logika inti. Tidak ada perubahan, tetapi piringan analog botvs berjalan dengan baik, strategi yang didukung lebih dari 3 tahun yang lalu. Pertama adalah mendapatkan fungsi harga jual beli GetPrice (), yang membutuhkan informasi kedalaman pesanan, perhatikan bahwa panjang informasi kedalaman pesanan berbeda di berbagai platform, dan situasi di mana jumlah yang dibutuhkan masih tidak ada bahkan setelah menjelajahi semua pesanan (yang menyebabkan hal ini pada banyak daftar netting 0.01 di kemudian hari), panggilan GetPrice ( Buy) adalah mendapatkan harga beli).

function GetPrice(Type) {
   //_C()是平台的容错函数
    var depth=_C(exchange.GetDepth);
    var amountBids=0;
    var amountAsks=0;
    //计算买价,获取累计深度达到预设的价格
    if(Type=="Buy"){
       for(var i=0;i<20;i++){
           amountBids+=depth.Bids[i].Amount;
           //参数floatamountbuy是预设的累计深度
           if (amountBids>floatamountbuy){
               //稍微加0.01,使得订单排在前面
              return depth.Bids[i].Price+0.01;}
        }
    }
    //同理计算卖价
    if(Type=="Sell"){
       for(var j=0; j<20; j++){
    	   amountAsks+=depth.Asks[j].Amount;
            if (amountAsks>floatamountsell){
            return depth.Asks[j].Price-0.01;}
        }
    }
    //遍历了全部深度仍未满足需求,就返回一个价格,以免出现bug
    return depth.Asks[0].Price
}

Fungsi utama dari setiap loop adalah onTick (), di mana waktu loop yang ditentukan adalah 3.5s, dan setiap loop akan membatalkan unit asli dan mengaitkan ulang, semakin mudah semakin tidak ada bug.

function onTick() {
    var buyPrice = GetPrice("Buy");
    var sellPrice= GetPrice("Sell");
    //diffprice是预设差价,买卖价差如果小于预设差价,就会挂一个相对更深的价格
    if ((sellPrice - buyPrice) <= diffprice){
            buyPrice-=10;
            sellPrice+=10;}
    //把原有的单子全部撤销,实际上经常出现新的价格和已挂单价格相同的情况,此时不需要撤销
    CancelPendingOrders() 
    //获取账户信息,确定目前账户存在多少钱和多少币
    var account=_C(exchange.GetAccount);
    //可买的比特币量,_N()是平台的精度函数
    var amountBuy = _N((account.Balance / buyPrice-0.1),2); 
    //可卖的比特币量,注意到没有仓位的限制,有多少就买卖多少,因为我当时的钱很少
    var amountSell = _N((account.Stocks),2); 
    if (amountSell > 0.02) {
        exchange.Sell(sellPrice,amountSell);}
    if (amountBuy > 0.02) {
        exchange.Buy(buyPrice, amountBuy);}
    //休眠,进入下一轮循环
    Sleep(sleeptime);
}

ekor

Seluruh prosesnya juga lebih dari 40 baris, tampak sangat sederhana, tetapi pada saat itu juga memakan waktu lebih dari seminggu, ini masih dalam kasus platform botvs. Keuntungan terbesarnya adalah awal, pada tahun 2014, pasar yang didominasi oleh pemindahan, jaringan dan frekuensi rampokan yang tinggi tidak banyak, membuat strategi seperti ikan mendapatkan air, kemudian persaingan tidak dapat dihindari semakin sengit, uang saya juga semakin banyak, tantangan yang dihadapi semakin banyak, setiap waktu harus melakukan perubahan besar untuk mengatasi, tetapi secara keseluruhan berjalan dengan baik. Tapi strategi kuantitatif yang tidak membutuhkan frekuensi tinggi memiliki ruang yang luas.


/*
就是我刚开始编写机器人的源代码,几乎没有改动,参数也是原来的参数。这个版本的程序有许多
需要改进的地方,但即使如此,它也当时表现除了惊人的盈利能力,在我本金不多时,不加杠杆平
均每天盈利在5%左右。当然无论从哪一方面,它都不适应今天的市场。
我同时也发了一篇文章在社区,大家可以看看。
by 小草
*/

//稍微改了一下,用了平台的容错函数_C(),和精度函数_N().
//取消全部订单
function CancelPendingOrders() {
    var orders = _C(exchange.GetOrders);
    for (var j = 0; j < orders.length; j++) {
          exchange.CancelOrder(orders[j].Id, orders[j]);}
}

//计算将要下单的价格
function GetPrice(Type,depth) {
    var amountBids=0;
    var amountAsks=0;
    //计算买价,获取累计深度达到预设的价格
    if(Type=="Buy"){
       for(var i=0;i<20;i++){
           amountBids+=depth.Bids[i].Amount;
           //floatamountbuy就是预设的累计买单深度
           if (amountBids>floatamountbuy){
               //稍微加0.01,使得订单排在前面
              return depth.Bids[i].Price+0.01;}
        }
    }
    //同理计算卖价
    if(Type=="Sell"){
       for(var j=0; j<20; j++){
    	   amountAsks+=depth.Asks[j].Amount;
            if (amountAsks>floatamountsell){
            return depth.Asks[j].Price-0.01;}
        }
    }
    //遍历了全部深度仍未满足需求,就返回一个价格,以免出现bug
    return depth.Asks[0].Price
}
 
function onTick() {
    var depth=_C(exchange.GetDepth);
    var buyPrice = GetPrice("Buy",depth);
    var sellPrice= GetPrice("Sell",depth);
    //买卖价差如果小于预设值diffprice,就会挂一个相对更深的价格
    if ((sellPrice - buyPrice) <= diffprice){
            buyPrice-=10;
            sellPrice+=10;}
    //把原有的单子全部撤销,实际上经常出现新的价格和已挂单价格相同的情况,此时不需要撤销
    CancelPendingOrders() 
    //获取账户信息,确定目前账户存在多少钱和多少币
    var account=_C(exchange.GetAccount);
    //可买的比特币量
    var amountBuy = _N((account.Balance / buyPrice-0.1),2); 
    //可卖的比特币量,注意到没有仓位的限制,有多少就买卖多少,因为我当时的钱很少
    var amountSell = _N((account.Stocks),2); 
    if (amountSell > 0.02) {
        exchange.Sell(sellPrice,amountSell);}
    if (amountBuy > 0.02) {
        exchange.Buy(buyPrice, amountBuy);}
    //休眠,进入下一轮循环
    Sleep(sleeptime);
}
    
function main() {
    while (true) {
        onTick();
    }
}

Berkaitan

Lebih banyak

GuohwaIni adalah strategi langsung, bukan? sekarang beberapa bursa seolah-olah sebagian dari koin gratis, apakah Anda bisa melakukannya?

a624587332Jika Bitcoin tidak membayar biaya transaksi, apakah itu bisa dilakukan lagi?

abcdsfasdfhzwSaya melihat dalam program ini bahwa setelah membeli, tidak ada kode yang dijual, setelah menjual, tidak ada yang dibeli.

timerSaya ingin tahu mengapa tidak bisa digunakan sekarang? Apakah ada strategi yang berguna sekarang?

bijiasuoBuatlah tanda, dan tunggu versi yang lebih baik.

QinergTerima kasih banyak untuk berbagi, sangat bermanfaat. Kami berharap lebih banyak pertukaran pemikiran yang mendalam seperti ini. Terima kasih. Terima kasih.

LogaBerhenti.