Skip to main content

Financial Technical Analysis Indicator Library. Python bindings for https://github.com/TulipCharts/tulipindicators

Project description

tulipy

Forked by Drakkar-Software for the only purpose of keeping dependencies version up to date.

Python bindings for Tulip Indicators

Tulipy requires numpy as all inputs and outputs are numpy arrays (dtype=np.float64).

Installation

You can install via pip install OctoBot-Tulipy. If a wheel is not available for your system, you will need to pip install Cython numpy to build from the source distribution. When building from source on Windows, you will need the Microsoft Visual C++ Build Tools installed.

Usage

import numpy as np
import tulipy as ti
ti.TI_VERSION
'0.8.4'
DATA = np.array([81.59, 81.06, 82.87, 83,    83.61,
                 83.15, 82.84, 83.99, 84.55, 84.36,
                 85.53, 86.54, 86.89, 87.77, 87.29])

Information about indicators are exposed as properties:

def print_info(indicator):
    print("Type:", indicator.type)
    print("Full Name:", indicator.full_name)
    print("Inputs:", indicator.inputs)
    print("Options:", indicator.options)
    print("Outputs:", indicator.outputs)
print_info(ti.sqrt)
Type: simple
Full Name: Vector Square Root
Inputs: ['real']
Options: []
Outputs: ['sqrt']

Single outputs are returned directly. Indicators returning multiple outputs use a tuple in the order indicated by the outputs property.

ti.sqrt(DATA)
array([ 9.03271831,  9.00333272,  9.10329611,  9.11043358,  9.14385039,
        9.11866218,  9.1016482 ,  9.16460583,  9.19510739,  9.18477   ,
        9.24824308,  9.30268778,  9.32148057,  9.36856446,  9.34291175])
print_info(ti.sma)
Type: overlay
Full Name: Simple Moving Average
Inputs: ['real']
Options: ['period']
Outputs: ['sma']
ti.sma(DATA, period=5)
array([ 82.426,  82.738,  83.094,  83.318,  83.628,  83.778,  84.254,
        84.994,  85.574,  86.218,  86.804])

Invalid options will throw an InvalidOptionError:

try:
    ti.sma(DATA, period=-5)
except ti.InvalidOptionError:
    print("Invalid Option!")
Invalid Option!
print_info(ti.bbands)
Type: overlay
Full Name: Bollinger Bands
Inputs: ['real']
Options: ['period', 'stddev']
Outputs: ['bbands_lower', 'bbands_middle', 'bbands_upper']
ti.bbands(DATA, period=5, stddev=2)
(array([ 80.53004219,  80.98714192,  82.53334324,  82.47198345,
         82.41775044,  82.43520292,  82.51133078,  83.14261781,
         83.53648779,  83.8703237 ,  85.28887096]),
 array([ 82.426,  82.738,  83.094,  83.318,  83.628,  83.778,  84.254,
         84.994,  85.574,  86.218,  86.804]),
 array([ 84.32195781,  84.48885808,  83.65465676,  84.16401655,
         84.83824956,  85.12079708,  85.99666922,  86.84538219,
         87.61151221,  88.5656763 ,  88.31912904]))

If inputs of differing sizes are provided, they are right-aligned and trimmed from the left:

DATA2 = np.array([83.15, 82.84, 83.99, 84.55, 84.36])
# 'high' trimmed to DATA[-5:] == array([ 85.53,  86.54,  86.89,  87.77,  87.29])
ti.aroonosc(high=DATA, low=DATA2, period=2)
array([  50.,  100.,   50.])

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

octobot_tulipy-0.4.11b6-cp314-cp314-win_amd64.whl (103.5 kB view details)

Uploaded CPython 3.14Windows x86-64

octobot_tulipy-0.4.11b6-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (344.2 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

octobot_tulipy-0.4.11b6-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (347.3 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

octobot_tulipy-0.4.11b6-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (341.8 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ i686manylinux: glibc 2.5+ i686

octobot_tulipy-0.4.11b6-cp314-cp314-macosx_11_0_arm64.whl (81.6 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

octobot_tulipy-0.4.11b6-cp314-cp314-macosx_10_15_x86_64.whl (87.6 kB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

octobot_tulipy-0.4.11b6-cp314-cp314-macosx_10_15_universal2.whl (156.4 kB view details)

Uploaded CPython 3.14macOS 10.15+ universal2 (ARM64, x86-64)

octobot_tulipy-0.4.11b6-cp313-cp313-win_amd64.whl (101.1 kB view details)

Uploaded CPython 3.13Windows x86-64

octobot_tulipy-0.4.11b6-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (345.3 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

octobot_tulipy-0.4.11b6-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (350.3 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

octobot_tulipy-0.4.11b6-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (342.3 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ i686manylinux: glibc 2.5+ i686

octobot_tulipy-0.4.11b6-cp313-cp313-macosx_11_0_arm64.whl (81.4 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

octobot_tulipy-0.4.11b6-cp313-cp313-macosx_10_13_x86_64.whl (87.3 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

octobot_tulipy-0.4.11b6-cp313-cp313-macosx_10_13_universal2.whl (156.0 kB view details)

Uploaded CPython 3.13macOS 10.13+ universal2 (ARM64, x86-64)

octobot_tulipy-0.4.11b6-cp312-cp312-win_amd64.whl (101.3 kB view details)

Uploaded CPython 3.12Windows x86-64

octobot_tulipy-0.4.11b6-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (351.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

octobot_tulipy-0.4.11b6-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (356.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

octobot_tulipy-0.4.11b6-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (349.1 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ i686manylinux: glibc 2.5+ i686

octobot_tulipy-0.4.11b6-cp312-cp312-macosx_11_0_arm64.whl (81.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

octobot_tulipy-0.4.11b6-cp312-cp312-macosx_10_13_x86_64.whl (87.7 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

octobot_tulipy-0.4.11b6-cp312-cp312-macosx_10_13_universal2.whl (156.8 kB view details)

Uploaded CPython 3.12macOS 10.13+ universal2 (ARM64, x86-64)

File details

Details for the file octobot_tulipy-0.4.11b6-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for octobot_tulipy-0.4.11b6-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 65fa822a9ab61dd5d2656d654caa2bfca1e0837acf9f530c7378b8361b250feb
MD5 472adf762b27f70151129be033d2633f
BLAKE2b-256 c6675b537da25281faaab63b6d5f89d828337c863f78353d3cdf51c33a6ad2c0

See more details on using hashes here.

File details

Details for the file octobot_tulipy-0.4.11b6-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for octobot_tulipy-0.4.11b6-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d8f401f3f3cda3de49887df54cb688202364d9407acfcfd20961f1775d9a9980
MD5 010d087322316d29351433dc35a8e563
BLAKE2b-256 2ffd761a518024033ac35ed00c173bade999a8d563ed5cb8fbf4236301a1877e

See more details on using hashes here.

File details

Details for the file octobot_tulipy-0.4.11b6-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for octobot_tulipy-0.4.11b6-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 62c0695549afaf25d9256c1c859eb227c0a3bec729ab0d2cf87db08336efec72
MD5 7e8ea1d18b6ec5c95ed72185f3261941
BLAKE2b-256 b95a216653f073165d54713661b6c95ae0b72342a2a0e72ceb06b557648a1ead

See more details on using hashes here.

File details

Details for the file octobot_tulipy-0.4.11b6-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl.

File metadata

File hashes

Hashes for octobot_tulipy-0.4.11b6-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 898e5d76daf743e8aef4bfff7766bf275af1639de7aea4b4193aeba747e56573
MD5 818e7184f12b9c405f03f98bb04dcfe3
BLAKE2b-256 bafb0d3ea05ac1ea87fc1fa4dd1fedc8f4def442971117900bdb7a6d14a4761d

See more details on using hashes here.

File details

Details for the file octobot_tulipy-0.4.11b6-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for octobot_tulipy-0.4.11b6-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f569aa0b1e8dc4e894e7daf0f7cc5dbb16d071b2fffeffaaab8fc943257e9f63
MD5 792b12c7e29a41496237347ae09416ed
BLAKE2b-256 64e17a244078645a50117bb3e788d01b3e62677d1fdaa48fa6affc3a9b5c7d76

See more details on using hashes here.

File details

Details for the file octobot_tulipy-0.4.11b6-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for octobot_tulipy-0.4.11b6-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 1cb10c85c9c4ad52b21b0ac2a935fb4d647cbb9f6c1b55dfb01ea498dd435a32
MD5 4b6675044fbb2cffda0608c043bef491
BLAKE2b-256 1a6a1abb7ad01d0ba88c2b8f3f582f173713afde0abc5aaa659a02259ca663da

See more details on using hashes here.

File details

Details for the file octobot_tulipy-0.4.11b6-cp314-cp314-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for octobot_tulipy-0.4.11b6-cp314-cp314-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 f9d26ad1be6d5bf0082022036f38d45864be3121cba2011b14d5e982e8544f71
MD5 12f22958329d6787f18201f4b6677281
BLAKE2b-256 12f4ba62ce86235557b022d61e09bcf96e2ddc95fd433d60a8a78304cdae846b

See more details on using hashes here.

File details

Details for the file octobot_tulipy-0.4.11b6-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for octobot_tulipy-0.4.11b6-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 780c0c49fbc954ae2362aee99e750d5dc9017a117f864398a304fab351d7ca5f
MD5 4178df4fcef6b186034774c00a0e181d
BLAKE2b-256 7f410fe0963697b647df8709709c1615d4abe5bbe844dbc228e01d73ba49ce6e

See more details on using hashes here.

File details

Details for the file octobot_tulipy-0.4.11b6-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for octobot_tulipy-0.4.11b6-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f90030a57de83bdbc604ecdd5294546b9500dc40687e798837244137c5c4f24b
MD5 adc15abf3969376159f5e7d1953ee61a
BLAKE2b-256 7c76ff9335d037885e1f2b2c97254bb5b5fdc4970e51bb57cda1e39ed93a1f97

See more details on using hashes here.

File details

Details for the file octobot_tulipy-0.4.11b6-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for octobot_tulipy-0.4.11b6-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 b20ec4c2845021b3c6684019da23a0bc247d7384962774b77ca61fe870b946ae
MD5 ef1201973c852e46934005e1d15fe742
BLAKE2b-256 6617a0572d2914e89d1dad2b51f3ef156f41677fbc9b3266bb15fca657ba145c

See more details on using hashes here.

File details

Details for the file octobot_tulipy-0.4.11b6-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl.

File metadata

File hashes

Hashes for octobot_tulipy-0.4.11b6-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 91bbf7337d3d9777c8a97ea5e53907a733a3c5ffadf2f78f2563930a3eab509d
MD5 a5eb934bdd69709bf16e732f25a371e3
BLAKE2b-256 0473b4253bd84f0ccff641ab3b160c5fbc72701cb519f183903c526858f855dd

See more details on using hashes here.

File details

Details for the file octobot_tulipy-0.4.11b6-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for octobot_tulipy-0.4.11b6-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 552c541ef633ea857c37d7311e1694553227681fd3d92f00df174806ed0cb628
MD5 fd9967a95d1c0e9b858a037f4ed451c2
BLAKE2b-256 a62b1a307b038917f56a03ed4f0405425e48eefbe8ad0ba25a582f36baf467c4

See more details on using hashes here.

File details

Details for the file octobot_tulipy-0.4.11b6-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for octobot_tulipy-0.4.11b6-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 16e1d45b26c9b45d99742f8aaf3f3692699e267ffd50f71382aecf426ee7b8fa
MD5 69156fe3b61e7bde68a80074c663f8e5
BLAKE2b-256 858e3766f2fb835998c9d1c28ea40601052d3233690a57c0f845a521b30b0c72

See more details on using hashes here.

File details

Details for the file octobot_tulipy-0.4.11b6-cp313-cp313-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for octobot_tulipy-0.4.11b6-cp313-cp313-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 b634baaf2e530b058a3a21483e9a0097a5e7b78b2305b66debbe754b21a75687
MD5 2c6e4960afb70062733b92df4b81e3bc
BLAKE2b-256 5ab8b6b88ca173993357b9750c2401c7d3642c20adf4fceed6c31056fce907fa

See more details on using hashes here.

File details

Details for the file octobot_tulipy-0.4.11b6-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for octobot_tulipy-0.4.11b6-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 5c3c96533e0f085eb307382715c92fdc8e3fbe669794068c61034eb0ffab290e
MD5 e8ca77663e9866284aaedaa8ca7c09dc
BLAKE2b-256 89866101568c100d5153188e6051729eb779036dabcb025a8e49e7fa3b4d2a28

See more details on using hashes here.

File details

Details for the file octobot_tulipy-0.4.11b6-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for octobot_tulipy-0.4.11b6-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 84839e548f6e00e978c27ca66c90b2e1b5665e3e0a3bec11e3bc9e019505f6de
MD5 993b73aa1fed1a5a925c552387fa194e
BLAKE2b-256 144dd65cbe881c0807975c32404dbdb512d9f1fc571368eb1e018543e1f87070

See more details on using hashes here.

File details

Details for the file octobot_tulipy-0.4.11b6-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for octobot_tulipy-0.4.11b6-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 a3beba13aed2ab8f8897e6ef4bb6855fc5823c725a0bd3a3f4db9c00860e297b
MD5 2d7f75bbaab57183dca37196fe66c333
BLAKE2b-256 9b2a7017203134478f591cd9998f7749879e3c41b1a192dc8b41ac10d088e927

See more details on using hashes here.

File details

Details for the file octobot_tulipy-0.4.11b6-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl.

File metadata

File hashes

Hashes for octobot_tulipy-0.4.11b6-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 2dcb0ce63c0c1a2e5173d28fc1cae1f18f266c0582649d65e4cce8f81ce4428a
MD5 d2c4a18af1fee6e87e530369f4e0b0ed
BLAKE2b-256 a8aceb8688b680570535edcf823765836d37f9fcc27b1676b858efc2902e66ea

See more details on using hashes here.

File details

Details for the file octobot_tulipy-0.4.11b6-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for octobot_tulipy-0.4.11b6-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c681e6ddfd420274be81a6abd8a84cb359a62424307492c3e3eb623e44ef33dc
MD5 aa14e1ed4ae2767170da486f580e65ff
BLAKE2b-256 655e4a885f50c81ad38349729bf2abf81250e11b2e5ed462bba25c5e0b1bb2a2

See more details on using hashes here.

File details

Details for the file octobot_tulipy-0.4.11b6-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for octobot_tulipy-0.4.11b6-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 790147976d9acdc6fe4b1605ab668d3a94d3e24c751e276432412bad65caee47
MD5 c14d2cd42f75354c4840639a766b37d0
BLAKE2b-256 c8d24ca2bb79005fe0551c7fb24a735f8cb0ce6560f5d3c770e47432ea1e3aec

See more details on using hashes here.

File details

Details for the file octobot_tulipy-0.4.11b6-cp312-cp312-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for octobot_tulipy-0.4.11b6-cp312-cp312-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 f4c36f48ac4885c646907706868a178b9def1210b871792acba722aa1ff65af1
MD5 94ecb3d5636e6f1c06d434ea31dc6440
BLAKE2b-256 681ae773a1290506fc1142f0fff0b576aef9886d8b83175b9bbef79d0dfe211c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page