Skip to content

deepentropy/oakscriptJS

Repository files navigation

OakScriptJS Logo

OakScriptJS

Live Demo: deepentropy.github.io/oakscriptJS

OakScriptJS is a TypeScript/JavaScript library that provides PineScript v6 compatible technical analysis functions. Build trading indicators, run backtests, or integrate TA calculations into any JavaScript environment.

Packages

Package Description
oakscriptjs Technical analysis library with Series-based API
@oakscript/indicators Pre-built technical indicators (SMA, EMA, RSI, MACD, BB, etc.)

Quick Start

Install the library

npm install oakscriptjs

Calculate an indicator

import {Series, ta} from 'oakscriptjs';

const prices = [44, 44.5, 45, 45.5, 46, 46.5, 47, 47.5, 48, 48.5];
const close = new Series(prices);
const sma = ta.sma(close, 5);

console.log(sma.toArray());

Use pre-built indicators

import { SMA, RSI, MACD } from '@oakscript/indicators';

const bars = [...]; // OHLCV data
const smaResult = SMA.calculate(bars, { len: 20 });
const rsiResult = RSI.calculate(bars, { length: 14 });

Documentation

Development

This is a pnpm workspace monorepo.

Prerequisites

  • Node.js >= 18.0.0
  • pnpm >= 8.0.0

Setup

pnpm install    # Install dependencies
pnpm build      # Build all packages
pnpm test       # Run tests
pnpm typecheck  # Type check

Working with packages

pnpm --filter oakscriptjs build
pnpm --filter @oakscript/indicators test

Project Structure

oakscriptJS/
├── packages/
│   ├── oakscriptjs/      # Technical analysis library
│   └── indicators/       # Pre-built indicators package
├── example/              # Live demo (GitHub Pages)
└── docs/                 # Documentation + official examples

Maintained by DeepEntropy

About

JavaScript/TypeScript implementation of PineScript

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages