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

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

Автор:Изобретатели количественного измерения - мечты, Создано: 2017-02-11 18:01:05, Обновлено: 2019-08-01 09:20:22

32-битная система Windows Окружение 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Если вы используете талиб-библиотеку, вы получаете следующие ошибки при использовании собственных хост-рецензий или политики запуска на диске:

img

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

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

  • 1, готовый к загрузке и установке Python 2.7 (win32)

    img

    Обратите внимание, что версия Python 2.7 для win32 приведена на рисунке для загрузки установки.

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

    img

  • 2, установка колеса

    img

    Ниже приведены данные, которые можно найти в Интернете:

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

    Чтобы найти соответствующую версию и систему талиб-файлов, смотрите:

    img

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

    img

  • 4, Я думал, что это нормально, но когда я тестировал import talib, я получил ошибку: "Numpy не найден". Похоже, эта библиотека также должна быть установлена.

    img

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

    img

    Установка:

    img

  • Пять, попробуйте.

    img

    Попробуйте использовать талиб в качестве индикаторной функции.

    Вывод LogStatus может быть показан.

    img

  • Указанные внизу пакеты установки, которые я использовал в этом процессе, были переданы QQ группе.

    img

    После сжатия

    img


Больше

МайкеоСпасибо!