Sumber dimuat naik... memuat...

2.7.1 Sistem 32-bit Windows Python 2.7 persekitaran Pemasangan Talib

Penulis:Pencipta Kuantiti - Impian Kecil, Dicipta: 2017-02-11 18:01:05, Dikemas kini: 2019-08-01 09:20:22

Sistem 32-bit Windows Python 2.7 persekitaran pemasangan Talib


Pencipta Kuantitization Platform menggunakan Python untuk menulis strategi apabila menggunakan perpustakaan TA yang ditulis semula untuk mengira MA, MACD, EMA, dan lain-lain.

Contohnya, anda boleh mengulas semula dengan menggunakan dasar (sama ada menggunakan pelayan awam atau menggunakan pentadbir anda sendiri, tidak masalah).

import types
def main():
    STATE_IDLE = -1
    state = STATE_IDLE
    initAccount = ext.GetAccount()
    while True:
        if state == STATE_IDLE :
            n = ext.Cross(FastPeriod,SlowPeriod) # 指标交叉函数
            if abs(n) >= EnterPeriod :
                opAmount = _N(initAccount.Stocks * PositionRatio,3)
                Dict = ext.Buy(opAmount) if n > 0 else ext.Sell(opAmount)
                if Dict :
                    opAmount = Dict['amount']
                    state = PD_LONG if n > 0 else PD_SHORT
                    Log("开仓详情",Dict,"交叉周期",n)
        else:
            n = ext.Cross(ExitFastPeriod,ExitSlowPeriod) # 指标交叉函数
            if abs(n) >= ExitPeriod and ((state == PD_LONG and n < 0) or (state == PD_SHORT and n > 0)) :
                nowAccount = ext.GetAccount()
                Dict2 = ext.Sell(nowAccount.Stocks - initAccount.Stocks) if state == PD_LONG else ext.Buy(initAccount.Stocks - nowAccount.Stocks)
                state = STATE_IDLE
                nowAccount = ext.GetAccount()
                LogProfit(nowAccount.Balance - initAccount.Balance,'钱:',nowAccount.Balance,'币:',nowAccount.Stocks,'平仓详情:',Dict2,'交叉周期:',n)
        Sleep(Interval * 1000)


Dasar ini Nama: Dasar rata-rata ((python edisi), menggunakan templat: python edisi Kelas Perdagangan Mata Wang Digital

Di sini anda boleh menyalin dan mendapatkannya secara langsung di Strategy Square.

Dasar ini tidak menggunakan sebarang fungsi penunjuk, tetapi menggunakan ext.Cross export function dari template ini.TA.MA◦ Menggunakan TA Library (Tidak masalah kerana TA Library sudah terbina dalam!)

Jika anda mengubah kodnya.

import types
import talib  # 改动  引用 talib 库
def main():
    STATE_IDLE = -1
    state = STATE_IDLE
    initAccount = ext.GetAccount()
    while True:
        records = exchange.GetRecords()
        ma = talib.MA(records.Close)       # 改动 ,调用 talib 库的 MA 函数 即 均线指标计算
        LogStatus("均值" + str(ma))
        if state == STATE_IDLE :
            n = ext.Cross(FastPeriod,SlowPeriod) # 指标交叉函数
            if abs(n) >= EnterPeriod :
                opAmount = _N(initAccount.Stocks * PositionRatio,3)
                Dict = ext.Buy(opAmount) if n > 0 else ext.Sell(opAmount)
                if Dict :
                    opAmount = Dict['amount']
                    state = PD_LONG if n > 0 else PD_SHORT
                    Log("开仓详情",Dict,"交叉周期",n)
        else:
            n = ext.Cross(ExitFastPeriod,ExitSlowPeriod) # 指标交叉函数
            if abs(n) >= ExitPeriod and ((state == PD_LONG and n < 0) or (state == PD_SHORT and n > 0)) :
                nowAccount = ext.GetAccount()
                Dict2 = ext.Sell(nowAccount.Stocks - initAccount.Stocks) if state == PD_LONG else ext.Buy(initAccount.Stocks - nowAccount.Stocks)
                state = STATE_IDLE
                nowAccount = ext.GetAccount()
                LogProfit(nowAccount.Balance - initAccount.Balance,'钱:',nowAccount.Balance,'币:',nowAccount.Stocks,'平仓详情:',Dict2,'交叉周期:',n)
        Sleep(Interval * 1000)


Panggilan dalam strategitalib.MA(iaitu menggunakan perpustakaan talib), apabila anda menggunakan cadangan tuan rumah anda sendiri atau menjalankan dasar cakera nyata, anda akan mendapat error seperti berikut:

img

Mungkin pengguna akan mendapati: Saya menggunakan pelayan awam untuk mengulas semula, tidak mengapa! Ya! kerana Talib Library sudah dipasang di pelayan awam.

Untuk persekitaran Python tuan rumah anda, anda hanya perlu memasang talib secara manual. Contoh di bawah adalah pemasangan perpustakaan talib dalam persekitaran Python 2.7 di bawah sistem windows XP (iaitu 32 bit windows). Terdapat lebih banyak kaedah dalam talian, tetapi satu yang lebih mudah digunakan di sini.

  • 1, bersedia untuk memuat turun dan memasang Python 2.7 (win32)

    img

    Perhatikan bahawa versi Python 2.7 untuk win32 telah dimuat turun sebagai paket pemasangan.

    Perhatian semasa pemasangan Pilih pilihan Auto Configure Environment Variable, pip komponen sudah dipasang secara lalai.

    img

  • 2, memasang roda

    img

    Di bawah ini adalah maklumat yang dicari di internet:

python wheel怎么安装?
小灰机289 | 浏览 14404 次
推荐于2016-01-19 03:17:24 最佳答案
你装了pip吗,建议先装pip,后面安装各种python库就很方便了。
打开命令行窗口,输入下面的命令:
pip install wheel
这时pip会自动在网络上下载安装wheel。
安装完成后可以敲下面的命令查看是否安装成功:
pip freeze
  • 3. Muat turun dan pasang talib

    Alamat muat turun:http://www.lfd.uci.edu/~gohlke/pythonlibs/#ta-lib

    Untuk mencari talib yang sesuai dengan versi dan sistem, lihat gambar berikut:

    img

    Selepas memuat turun, anda boleh memasang seperti gambar di bawah:

    img

  • 4 、 Saya fikir OK, tetapi ketika menggunakan import talib, saya mendapat ralat yang menunjukkan bahawa saya tidak dapat mencari numpy, dan saya ingin memasang perpustakaan ini juga.

    img

    Muat turun numpy Alamat muat turun:http://www.lfd.uci.edu/~gohlke/pythonlibs/#ta-lib

    img

    Pemasangan:

    img

  • 5. Cuba.

    img

    Dalam inventor kuantitatif, cuba strategi menggunakan fungsi penunjuk talib

    Hasil LogStatus boleh dipaparkan.

    img

  • Paket pemasangan yang digunakan dalam proses di atas di bawah ini, saya telah menghantar kepada kumpulan QQ. Pengguna juga boleh memuat turun sendiri mengikut alamat tutorial.

    img

    Selepas dipotong

    img


Lebih lanjut

MAIKEOTerima kasih!