4
Подписаться
1271
Подписчики

2.7.1 Установка библиотеки индикатора talib в среде Python 2.7 на 32-разрядной системе Windows

Создано: 2017-02-11 18:01:05, Обновлено: 2019-08-01 09:20:22
comments   1
hits   4378

Windows 32-битная система Python 2.7 Окружение Установка индексной базы talib


Изобретатели количественной платформы при написании стратегий в Python не будут делать ошибок, если использовать переписанную библиотеку TA, рассчитывать показатели MA, MACD, EMA и т. Д. (поскольку они встроены).

Например, используйте стратегическую обратную связь (независимо от того, используете ли вы общедоступный сервер или используете собственный хостинг, это нормально).

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)


Название стратегии: равнолинейная стратегия (Python версия), использует шаблон: python версия наличных криптовалютных бирж

Это можно скачать прямо на площадке стратегии.

Эта стратегия не использует никаких показателей, но использует экспортируемую функцию ext.Cross этого шаблона, которая вызывает TA.MA. Используется в TA-классе ((так как TA-класс уже встроен, это не проблема!)

Если изменить код.

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)


При вызове talib.MA (т.е. при использовании библиотеки talib) в стратегии, при использовании собственного хост-резерва или при выполнении стратегии на дискете, будет сообщаться следующая ошибка:

2.7.1 Установка библиотеки индикатора talib в среде Python 2.7 на 32-разрядной системе Windows

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

Для собственного хоста Python-среды, можно просто установить talib. Ниже приведен пример установки библиотеки talib в среде Python 2.7 под Windows XP (то есть 32-битная Windows). В интернете существует больше способов, но здесь используется более простой.

  • #### 1. Готов к загрузке и установке Python 2.7 (win32)

2.7.1 Установка библиотеки индикатора talib в среде Python 2.7 на 32-разрядной системе Windows

Примечание: Win32 версия Python 2.7 изображена ниже.

При установке обратите внимание, что в окне “Автоматическая конфигурация” выбран вариант “Окружающая среда”, где компонент pip установлен по умолчанию.

2.7.1 Установка библиотеки индикатора talib в среде Python 2.7 на 32-разрядной системе Windows

  • #### 2. Установка wheel

2.7.1 Установка библиотеки индикатора talib в среде Python 2.7 на 32-разрядной системе Windows

Ниже приведены данные, полученные в результате поиска в Интернете.

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

Загрузка: http://www.lfd.uci.edu/~gohlke/pythonlibs/#ta-lib

Найдите талиб-файл, соответствующий версии и системе, как показано на рисунке:

2.7.1 Установка библиотеки индикатора talib в среде Python 2.7 на 32-разрядной системе Windows

Загрузка завершена, установка выполнена следующим образом:

2.7.1 Установка библиотеки индикатора talib в среде Python 2.7 на 32-разрядной системе Windows

  • #### 4., я думал, что все в порядке, но при тестировании с помощью import talib появилась ошибка: numpy не найден, похоже, библиотека должна быть установлена.

2.7.1 Установка библиотеки индикатора talib в среде Python 2.7 на 32-разрядной системе Windows

Скачать numpy Загрузка: http://www.lfd.uci.edu/~gohlke/pythonlibs/#ta-lib

2.7.1 Установка библиотеки индикатора talib в среде Python 2.7 на 32-разрядной системе Windows

Установка:

2.7.1 Установка библиотеки индикатора talib в среде Python 2.7 на 32-разрядной системе Windows

  • #### 5. Проверьте.

2.7.1 Установка библиотеки индикатора talib в среде Python 2.7 на 32-разрядной системе Windows

#### Попробуйте на изобретателя количественный, использовать стратегию талиб показательная функция

Теперь вывод LogStatus будет отображаться.

2.7.1 Установка библиотеки индикатора talib в среде Python 2.7 на 32-разрядной системе Windows

  • ### Инсталляционные пакеты, которые я использовал в этом процессе, были следующими, я уже отправил их в группу QQ. Пользователи также могут сами скачать их, следуя инструкции.

2.7.1 Установка библиотеки индикатора talib в среде Python 2.7 на 32-разрядной системе Windows

После сжатия

2.7.1 Установка библиотеки индикатора talib в среде Python 2.7 на 32-разрядной системе Windows