В процессе загрузки ресурсов... загрузка...

rest версия ОКЕКС Стратегия хеджирования на длительный срок (обучение)

Автор:Изобретатели количественного измерения - мечты, Дата: 2019-04-17 13:30:36
Тэги:Изучение

Очень упрощенная версия ОКЕКС стратегию хеджирования на длительный срок (обучение)

img

  • Если вы хотите, чтобы ваш контракт был изменен, вы должны изменить его.

  • Добавить два объекта биржи, первый квартал, второй - неделю.

  • Упрощенный весь упрощаемый код, большое пространство для оптимизации, осторожная методика обучения, с определенным риском в интервале.

  • Приветствуем отзывы BUG.

Учительская стратегия, тщательное использование.

Учительская стратегия, тщательное использование.

Учительская стратегия, тщательное использование.


function Hedge (isOpen, priceA, priceB) {
    exchanges[0].SetDirection(isOpen ? "sell" : "closesell")
    exchanges[1].SetDirection(isOpen ? "buy" : "closebuy");
    (function (routineA, routineB) {
        Log(routineA.wait(), routineB.wait(), priceA, priceB)
    })(exchanges[0].Go(isOpen ? "Sell" : "Buy", priceA, _ContractNum), exchanges[1].Go(isOpen ? "Buy" : "Sell", priceB, _ContractNum));
}

var slidePrice = 5
function main () {
    var tickerA, tickerB 
    var arr = []
    for (var i = 0 ; i < _Count ; i++) {
        arr.push({open: _Begin + i * _Add, cover: _Begin + i * _Add - _Profit, isHold: false})
    }
    exchanges[0].SetContractType("quarter")
    exchanges[1].SetContractType("this_week")
    while (1) {
        var tab = {type: "table", title: "状态", cols: ["节点信息"], rows: []}
        tickerA = exchanges[0].GetTicker()
        tickerB = exchanges[1].GetTicker()

        if (tickerA && tickerB) {
            $.PlotLine("差价:A所-B所", tickerA.Last - tickerB.Last)
            for (var j = 0 ; j < arr.length; j++) {
                if (tickerA.Buy - tickerB.Sell > arr[j].open && !arr[j].isHold) {
                    Hedge(true, tickerA.Buy - slidePrice, tickerB.Sell + slidePrice)
                    arr[j].isHold = true
                }
                if (tickerA.Sell - tickerB.Buy < arr[j].cover && arr[j].isHold) {
                    Hedge(false, tickerA.Sell + slidePrice, tickerB.Buy - slidePrice)
                    arr[j].isHold = false 
                }
                tab.rows.push([JSON.stringify(arr[j])])
            }
        }
        LogStatus(_D(), "\n `" + JSON.stringify(tab) + "`")
        Sleep(500)
    }
}

Связанные

Больше

Я люблю Джимми.exchanges[0].Go() не указано в документации этой функции?

В 1998 годуЗдравствуйте, авторы, пожалуйста, эта стратегия работает?

ФмнуроГде учебный ролик?

Я люблю Джимми.О, спасибо, я смотрю, я учусь.

Изобретатели количественного измерения - мечтыВ настоящее время существуют различные версии, которые могут быть использованы для создания новых приложений.

Изобретатели количественного измерения - мечтыСтратегии для обучения стратегии, осторожно используйте их на практике.

Изобретатели количественного измерения - мечтыЭтот код очень прост, и его можно понять, просмотрев код.