Tài nguyên đang được tải lên... tải...

Tiền xu của sinh viên đại học năm 98 và con đường định lượng

Tác giả:Máy thu hoạch thiên tài nhỏ, Tạo: 2020-03-07 18:11:51, Cập nhật: 2024-12-12 20:54:50

img

Tiền xu của sinh viên đại học năm 98 và con đường định lượng

1.入币圈

Tôi là một sinh viên năm 98 và đang học đại học máy tính tại một trường đại học 985, và tôi sẽ tiếp tục học tại đây.

Tôi có thể nhớ rõ ngày đó là ngày 1 tháng 9 năm 2017, vì ba ngày sau đó là vụ tấn công của các đồng xu, các ngân hàng trung ương và các ủy ban của năm bộ đã phát biểu chung để phòng ngừa rủi ro ICO, và giá đồng xu đã giảm.

Vào ngày 1 tháng 9, tôi đã thấy một video giới thiệu Bitcoin trên một trang mạng xã hội WeChat (như một video của Wang tự nhiên), rất tò mò về điều này, vì vậy tôi đã tải xuống token, lấp đầy 100 đô la vào, nhìn vào giá bitcoin, 3W nhiều nhân dân tệ, tôi đã sợ hãi, vì vậy tôi đã mua một chút LTC, lúc đó có vẻ như là khoảng 120 nhân dân tệ, và đêm sau tôi nhìn vào một vài xu trong tài khoản, và nói chuyện với một số người trong một số vòng tiền.

Vào ngày 4 tháng 9, một tuyên bố của Ngân hàng Trung ương, giá đồng xu nhảy vọt, làm tôi sợ hãi và vội vàng cắt thịt ra khỏi sân, sau đó nhìn chậm rãi vào giá đồng xu giảm, khi đó các sàn giao dịch trong nước như tokens không thể đăng ký, tỷ giá ngoại hối trong nước rất lớn, một làn sóng người di chuyển mập.

Sau đó tôi nói về việc trở lại trường học, và không còn đổ xô quay trở lại viết lách, nhưng vẫn theo dõi chuyển động của vòng đồng xu, thỉnh thoảng xem mọi người đang nói chuyện trong một số nhóm QQ. Một lần vào tháng 12, thị trường bò điên rồ nhất, đồng xu tăng hàng trăm lần, các đồng xu khác cũng tăng gấp đôi, dưới 50% không thể đếm biến động, tôi rất xúc động, sau đó lấp đầy một vài ngàn đô la, sau đó các hoạt động theo đuổi và giết chết kỳ lạ, nước mắt nhìn vào các đồng xu bay nhưng tôi cũng không thấy.

Vào ngày 18 tháng 1, thị trường bò bắt đầu sụp đổ, tôi đăng ký okcoin, bắt đầu chơi hợp đồng, phải nói là thực sự kích thích, 20 lần đòn bẩy, tăng gấp đôi, tăng giá, lặp đi lặp lại, nhìn vào đường k, không ngủ cả đêm.

Như hầu hết những người chơi cờ bạc hợp đồng, cuối cùng tôi cũng bị phá sản. Nhưng tôi phải nói rằng kinh nghiệm này đã dạy tôi nhiều kiến thức tài chính mà trước đây tôi không thể nhận ra.

2.搞量化

Sau khi trải qua nhiều đêm không ngủ, một người học máy tính, tôi bắt đầu suy nghĩ liệu có cách nào để chương trình giao dịch cho tôi để tôi có thể ngủ ngon hơn không?

Thực tế là lúc đó tôi đã tìm thấy fmz (tên của nó là botvs), nhưng tôi đã quá vất vả và đã mất nửa ngày để hiểu cách sử dụng nền tảng này, vì vậy tôi đã từ bỏ.

Sau đó, tôi bắt đầu viết API cho robot của mình trên Github:https://github.com/ccyanxyz/okexTrong khi đó, ông đã viết một số chiến lược như hai đường thẳng, lưới, mặc dù không kiếm được nhiều tiền, nhưng cũng bước chân vào cửa định lượng, biết các chỉ số kỹ thuật, học cách sử dụng Talib. Sau đó, vì trường học cũng có rất nhiều việc, robot cũng ngừng hoạt động, trở lại chế độ hoạt động máy xem bằng tay, nhưng tần suất đã rất thấp, thỉnh thoảng điều hành một hoặc hai lần.

3.用FMZ

Sau một vòng quay, tôi vẫn quay trở lại fmz, nhưng vì đã có kinh nghiệm về chiến lược viết tay của mình, lần này fmz rất nhanh. Tôi thấy fmz kết nối hầu hết các sàn giao dịch chính thống, đóng gói các giao dịch, tài khoản, v.v.

Tôi đã tìm thấy một bộ lưu trữ chính sách mở của fmz trên GitHub.https://github.com/fmzquant/strategiesTôi đã trải qua một đêm hoặc hai đêm đọc qua tất cả các chiến lược, sao chép lại và xem lại, đọc logic chiến lược, cố gắng cải thiện, nhưng tôi phải nói rằng tôi vẫn còn quá ăn kiêng, đọc qua các chiến lược và không viết một cái máy in.

Sau đó, tôi cũng bình tĩnh và suy nghĩ một chút, vòng đồng tiền hiện nay không phải là vòng đồng tiền 17 năm, sẽ không có 2000 khối đến 2000w câu chuyện huyền thoại, về những sinh viên nghèo như tôi, chi phí tiền bạc này, muốn đồng xu lật ngược đã là một đêm trời, vì vậy tôi từ bỏ nhìn vào giá đồng xu theo đuổi, cũng từ bỏ nỗ lực viết các chiến lược của máy bấm pin, thay vào đó bắt đầu quảng cáo trên fmz, thực sự viết một số chiến lược khó khăn.

Cho đến nay, tôi cũng đã viết rất nhiều chiến lược cho mọi người, quá trình thực sự khá phức tạp, thường có những người đến với tôi với một số ý tưởng chưa trưởng thành hoặc chiến lược hoàn toàn không kiếm được tiền, nhu cầu của nhiều người cũng không được mô tả rõ ràng, và chiến lược cuối cùng được thực hiện để đo lường không kiếm được tiền cũng là thô lỗ, vì vậy tôi đã thay đổi quảng cáo của mình thành bên dưới, để đặt các quy tắc và tiêu chuẩn nhận được tốt, và giúp tôi ít lo lắng hơn một chút.

Trước đây, số lần tôi nhận tiền ngày càng thấp hơn, vì có rất nhiều việc ở trường, và tôi đã từ chối nhiều người, nhưng vào tháng Hai, fcoin đã chạy ra ngoài và lấy đi hầu hết tài sản của tôi (nhưng tôi cũng không có nhiều tiền), vì vậy gần đây tôi đã phải bắt đầu nhận tiền.

Tôi đã có một số chiến lược:

Hôm nay, tôi đã phát hiện ra một điều hơi lười biếng, một người mua bán quảng cáo của tôi đã sao chép quảng cáo của mình:

Sau đó, tôi đã chuyển những món ăn quen thuộc của tôi thành những món ăn thông minh, và sau đó giảm giá khởi điểm (mùi mùi sự cạnh tranh độc ác).

Tại sao tôi không nói rằng tôi rất thành thạo FMZ, tôi không biết nếu bạn đã từng nghe một câu chuyện, không ai có thể thành thạo C ++, haha, haha, vì vậy tôi thường viết về các kỹ năng liên quan đến CV và các bài giới thiệu khác.

4.一个套利思路

Gần đây, tôi đã nghiên cứu một số chiến lược giao dịch, đầu cơ hiện tại, giao dịch tương lai, giao dịch dài hạn, giao dịch tam giác, v.v. và trong hai ngày qua, tôi đã thấy một ý tưởng giao dịch mà tôi chưa từng thấy trước đây (có lẽ tôi là một người đơn độc).

Giả sử thị trường ngoại hối hiện có một vài giao dịch với giá như sau:

USDollar/BritishPound 0.5
BritishPound/FrenchFranc 10.0
FrenchFranc/USDollar 0.21

Trong trường hợp này, không tính đến chi phí, nếu tôi có 1 USD, tôi có thể đổi nó thành bảng Anh, rồi đổi nó thành franc Pháp, rồi đổi nó thành USD, và một lần nữa từ 1 USD trở thành 1 x 0.5 x 10.0 x 0.21 = 1.05 USD, lợi nhuận là 0.05 USD.

Ví dụ trên cho thấy có cơ hội lợi nhuận, nhưng ví dụ dưới đây thì không:

USDollar/BritishPound 0.5
USDollar/FrenchFranc 4.9
BritishPound/FrenchFranc 10.0
BritishPound/USDollar 1.99
FrenchFranc/BritishPound 0.09
FrenchFranc/USDollar 0.19

Trong một thị trường sôi động, làm thế nào để chúng ta đánh giá liệu có cơ hội lợi nhuận không?

Vấn đề này có thể được trừu tượng hóa như là một vấn đề đường ngắn nhất của một biểu đồ có đường dẫn, với mỗi đồng tiền là một đỉnh, với giá hối đoái là một trọng lượng bên, tạo thành một biểu đồ có đường dẫn, và sau đó bắt đầu từ một đỉnh (ví dụ như USD), tìm một đường dẫn hình tròn có thể lợi dụng trên biểu đồ.

Ví dụ trên được lấy từ một bài viết của OJ.http://poj.org/problem?id=2240Các ý tưởng giải được tìm thấy tại đây:http://hehejun.blogspot.com/2018/10/poj2240-arbitrage.html

Vì vậy, gần đây tôi đã tự hỏi liệu tôi có thể thực hiện một chiến lược để nắm bắt và tận dụng cơ hội lợi nhuận, và một tìm kiếm trên GitHub đã thực hiện:https://github.com/wardbradt/peregrineTrong dự án này, chúng tôi sẽ trừu tượng hóa vấn đề này thành vấn đề đường ngắn nhất của đồ thị theo chiều ngang tích cực, không giống như các vấn đề OJ ở trên.

Tôi đã tự mình thực hiện một thực hiện đơn giản trên fmz, dựa trên ý tưởng giải bài toán tương ứng với bài toán OJ, chưa viết xong và không thể đảm bảo tính chính xác, dán ra, đặt dấu ngoặc:

var coins = {
    EMPTY: 0,
};
var price = {};

function get_coins() {
    for(var i = 0; i < exchanges.length; ++i) {
        var base = _C(exchanges[i].GetCurrency);
        var quote = _C(exchanges[i].GetQuoteCurrency);
        var len = Object.keys(coins).length;
        if(!coins.hasOwnProperty(quote)) {
            coins[quote] = len;
            len += 1;
        }
        if(!coins.hasOwnProperty(base)) {
            coins[base] = len;
            len += 1;
        }
    }
}

function get_graph() {
    var graph = [];
    for(var i = 0; i < exchanges.length; ++i) {
        var ticker = _C(exchanges[i].GetTicker);
        var base = _C(exchanges[i].GetCurrency);
        var quote = _C(exchanges[i].GetQuoteCurrency);
        graph.push({
            from: coins[base],
            to: coins[quote],
            weight: ticker.Buy
        });
        price[base + quote] = ticker.Buy;
        graph.push({
            from: coins[quote],
            to: coins[base],
            weight: 1 / ticker.Sell
        });
        price[quote + base] = 1 / ticker.Sell;
    }
    return graph;
}

function bfm(graph, initAmount, feeRate) {
    var dist = [];
    var pre = [];
    var i;
    var j;
    var fee = 0;
    for(i = 0; i < Object.keys(coins).length; ++i) {
        dist.push(0);
        pre.push(-1);
    }
    dist[1] = initAmount;
    for(i = 0; i < Object.keys(coins).length - 1; ++i) {
        for(j = 0; j < graph.length; ++j) {
            var from = graph[j].from;
            var to = graph[j].to;
            var rate = graph[j].weight;
            if(dist[from] * rate > dist[to]) {
                dist[to] = dist[from] * rate;
                pre[to] = from;
            }
        }
    }
    if(dist[1] <= initAmount) {
        return false;
    }
    var path = [];
    var top = pre[1];
    var coin_keys = Object.keys(coins);
    path.push({
        from: coin_keys[top],
        to: coin_keys[1],
        rate: price[coin_keys[top] + coin_keys[1]]
    });
    while(top != 1) {
        var temp = top;
        top = pre[top];
        path.push({
            from: coin_keys[top],
            to: coin_keys[temp],
            rate: price[coin_keys[top] + coin_keys[temp]],
        });
    }
    path.reverse();
    
    fee = path.length * feeRate * initAmount;
    if(dist[1] - initAmount <= fee || path.length == 0) {
        return false;
    }
    return path;
}

function onTick() {
    var graph = get_graph();
    var account = _C(exchanges[0].GetAccount);
    var balance = account.Balance;
    
    var path = bfm(graph, balance, 0);
    if(!path) {
        return;
    }
    Log(path);
    
    // buy & sell follow the path 
    ...
}

function main() {
    get_coins();
    
    while(1) {
        onTick();
    }
}

5.总结

Tóm lại, FMZ là một nền tảng tốt, hữu ích và đáng tin cậy, tiếng vang kiếm được nhiều tiền, hy vọng FMZ sẽ tốt hơn, tôi tốt nghiệp, tiếp tục nghiên cứu (cũng là hướng blockchain), và tiếp tục di chuyển trên FMZ.

(được viết vào chiều ngày 7 tháng 3 năm 2020, chỉ sau khi viết một chiến lược, thấy mình không có dư FMZ, đến và lừa phỉnh)

Chúng tôi đã có một cuộc thảo luận với các thành viên khác.


Có liên quan

Thêm nữa

LiuyuxuanCó một tín hiệu không ổn, làm thế nào để liên lạc?

superzhang2021Nhầm tín hiệu

wjunCảm ơn bạn đã chia sẻ.

ooolndooXin chào chủ nhà, rất vui được gặp bạn, tôi vừa đăng một yêu cầu chiến lược. Hiện nay, chủ nhà vẫn không trả tiền.

Những nhà phát minh định lượng - những giấc mơ nhỏMột số người nói: "Chúng tôi không thể làm điều đó".

Cỏ nhỏCảm ơn đã chia sẻ.

b6712Có thể lấy ví dụ về việc sử dụng trong vòng đồng tiền, nhưng lãi suất ngoại hối trong tài chính quốc tế là công việc của sinh viên đại học, có thể thấy không có lãi suất.

CzgcoolNhững người theo đuổi phương pháp học hỏi tài chính bằng cách định lượng là một trong những con đường Geek để đầu tư ít nhất và thu được nhiều nhất.

John.Chúc may mắn.

Máy thu hoạch thiên tài nhỏVâng, cùng nhau học.