avatar of 发明者量化-小小梦 发明者量化-小小梦
پر توجہ دیں نجی پیغام
4
پر توجہ دیں
1271
پیروکار

3.2 ٹیمپلیٹ: ڈیجیٹل کرنسی ٹریڈنگ لائبریری (انٹیگریٹڈ اسپاٹ اور فیوچر سپورٹ OKCoin فیوچر/BitVC)

میں تخلیق کیا: 2017-01-04 19:00:10, تازہ کاری: 2017-10-11 10:27:01
comments   19
hits   5333

3.2 ٹیمپلیٹ: ڈیجیٹل کرنسی ٹریڈنگ لائبریری (انٹیگریٹڈ اسپاٹ اور فیوچر سپورٹ OKCoin فیوچر/BitVC)


سیکشن 3.1 میں ایک فوریکس ٹریڈنگ ٹیمپلیٹ دکھایا گیا ہے ، جس سے فوریکس حکمت عملی کی تیاری میں دشواری کو بہت آسان بنایا گیا ہے۔ تاہم ، فیوچر ٹریڈنگ کا طریقہ کار موجودہ سے بہت مختلف ہے ، لہذا فیوچر ٹریڈنگ کی خصوصیات کو فوریکس ٹیمپلیٹ کی بنیاد پر مربوط کیا گیا ہے ، جو اب عوامی ہے۔

3.2 ٹیمپلیٹ: ڈیجیٹل کرنسی ٹریڈنگ لائبریری (انٹیگریٹڈ اسپاٹ اور فیوچر سپورٹ OKCoin فیوچر/BitVC)

اس کے علاوہ ، اس نے اس کی حکمت عملی کے بارے میں بھی بات کی ہے:

3.2 ٹیمپلیٹ: ڈیجیٹل کرنسی ٹریڈنگ لائبریری (انٹیگریٹڈ اسپاٹ اور فیوچر سپورٹ OKCoin فیوچر/BitVC)

  • ### نقد رقم:

نقد رقم کے پہلو میں ، جیسا کہ پچھلے ورژن میں تھا ، ڈیجیٹل کرنسی کی نقد رقم کی تجارت کی کلاس میں ہے۔

  • ### مستقبل:

پیرامیٹر: 3.2 ٹیمپلیٹ: ڈیجیٹل کرنسی ٹریڈنگ لائبریری (انٹیگریٹڈ اسپاٹ اور فیوچر سپورٹ OKCoin فیوچر/BitVC)

3.2 ٹیمپلیٹ: ڈیجیٹل کرنسی ٹریڈنگ لائبریری (انٹیگریٹڈ اسپاٹ اور فیوچر سپورٹ OKCoin فیوچر/BitVC)

اس حکمت عملی کا ٹیسٹ کوڈ:

  function main() {
    if (exchange.GetName() === 'Futures_OKCoin') {
        var info = exchange.SetContractType("this_week");
        Log("info 返回值:", info);
        Log("当前持仓信息", exchange.GetPosition(), _C(exchange.GetTicker));
        var depth = exchange.GetDepth();
        var p = $.NewPositionManager();
        p.OpenShort("this_week", 10, depth.Bids[0].Price - 2);
        Log(exchange.GetPosition());
        Sleep(500 * 1000);
        depth = exchange.GetDepth();
        var ret = p.Cover("this_week", depth.Bids[0].Price + 2, 5);
        Log("cover ret:", ret);
        //LogProfit(p.Profit());
        Log(exchange.GetPosition());
        Log("-----------------------------测试分割线----------------------------------------");
        var depth = exchange.GetDepth();
        p.OpenLong("this_week", 20, depth.Bids[0].Price + 2);
        Log(exchange.GetPosition());
        Sleep(500 * 1000);
        depth = exchange.GetDepth();
        var ret = p.Cover("this_week", depth.Bids[0].Price - 2, 10, PD_LONG);
        Log("cover ret:", ret);
        Log(exchange.GetPosition());
        Log("-----------------------------测试分割线----------------------------------------");
        var ret = p.Cover("this_week", depth.Bids[0].Price - 3, 10, PD_LONG);
        Log("cover ret:", ret);
        var ret = p.Cover("this_week", depth.Bids[0].Price + 3, 5, PD_SHORT);
        Log("cover ret:", ret);
        Log(exchange.GetPosition());
    } else if (exchange.GetName() === 'Futures_BitVC') {
        var info = exchange.SetContractType("week");
        Log("info 返回值:", info);
        Log("当前持仓信息", exchange.GetPosition(), _C(exchange.GetTicker));
        var depth = exchange.GetDepth();
        var p = $.NewPositionManager();
        p.OpenLong("week", 500, depth.Bids[0].Price + 2);
        Log(exchange.GetPosition());
        Sleep(500 * 1000);
        depth = exchange.GetDepth();
        var ret = p.Cover("week", depth.Bids[0].Price - 2, 500);
        Log("cover ret:", ret);
        Log(exchange.GetPosition());
        Log("-----------------------------测试分割线----------------------------------------");
        var info = exchange.SetContractType("week");
        Log("info 返回值:", info);
        Log("当前持仓信息", exchange.GetPosition(), _C(exchange.GetTicker));
        var depth = exchange.GetDepth();
        p.OpenShort("week", 600, depth.Bids[0].Price - 2);
        Log(exchange.GetPosition());
        Sleep(500 * 1000);
        depth = exchange.GetDepth();
        var ret = p.Cover("week", depth.Bids[0].Price - 2, 500, PD_SHORT);
        Log("cover ret:", ret);
        Log(exchange.GetPosition());
        Log("-----------------------------测试分割线----------------------------------------");
        var ret = p.Cover("week", depth.Bids[0].Price + 3, 100, PD_SHORT);
        Log("cover ret:", ret);
        //p.Cover("week", depth.Asks[0].Price - 3, 300, PD_LONG);
        Log(exchange.GetPosition());
    } else if(exchange.GetName() === 'huobi' || exchange.GetName() === 'OKCoin'){
        Log($.GetAccount());
        Log($.Buy(0.5));
        Log($.Sell(0.5));
        exchange.Buy(1000, 3);
        $.CancelPendingOrders(exchanges[0]);
        Log($.Cross(30, 7));
        Log($.Cross([1,2,3,2.8,3.5], [3,1.9,2,5,0.6]));
    }
  }

استعمال: 3.2 ٹیمپلیٹ: ڈیجیٹل کرنسی ٹریڈنگ لائبریری (انٹیگریٹڈ اسپاٹ اور فیوچر سپورٹ OKCoin فیوچر/BitVC)

حکمت عملی میں ٹیسٹ کوڈ ((شامل ٹیمپلیٹ منتخب کریں)

3.2 ٹیمپلیٹ: ڈیجیٹل کرنسی ٹریڈنگ لائبریری (انٹیگریٹڈ اسپاٹ اور فیوچر سپورٹ OKCoin فیوچر/BitVC)

ٹیسٹ کی حکمت عملی:

function main(){
    var p = $.NewPositionManager();
    var i = 0;
    exchanges[0].SetContractType("this_week");
    var isFirst = true;
    var ret = null;
    while(true){
        var depth = _C(exchanges[0].GetDepth);
        var positions = _C(exchanges[0].GetPosition);
        var len = positions.length;
        if(isFirst === true && i % 3 === 0 && len === 0){
            ret = p.OpenLong("this_week", 1 + (i % 3) + (i % 2), depth.Asks[0].Price);
            isFirst = false;
        }else if(isFirst === false){
            ret = p.OpenShort("this_week", 1 + (i % 3) + (i % 2), depth.Bids[0].Price);
            isFirst = true;
        }else{
            for(var j = 0 ; j < len; j++){
                if(positions[j].Type === PD_LONG){
                    ret = p.Cover("this_week", depth.Bids[0].Price - 2, positions[j].Amount, PD_LONG);
                }else if(positions[j].Type === PD_SHORT){
                    ret = p.Cover("this_week", depth.Asks[0].Price + 2, positions[j].Amount, PD_SHORT);    
                }
                Log("ret:", ret);
            }
        }
        Log("ret", ret, "---------------------#FF0000");
        i++;
        Sleep(1000 * 60 * 15);
    }
}

اگر آپ کے پاس کوئی سوال ہے تو برائے مہربانی مصنف سے رابطہ کریں، شکریہ!