<commit_before>====
pypf
====

Simple set of classes that can be used to generate point and figure charts.
The package also includes a script (pf.py) that can be used to create charts
at the command line.

Installation
------------

Install using pip::

    $ pip3 install pypf

Usage
-----

To use in a program, simply do::

    from pypf.chart import PFChart
    from pypf.instrument import Security
    security = Security(symbol, force_download, force_cache, interval, period)
    chart = PFChart(security, duration, box_size, reversal, method, style)
    chart.create_chart(dump=True)

To use at the command line::

    $ pf.py pf --pf-period 1 --pf-box-size .01 --pf-reversal 3 AAPL

pf.py supports the following arguments::

    usage: pf.py [-h] [-v] [--interval INTERVAL] [--force-cache]
                 [--force-download] [--period PERIOD]
                 command ...<commit_msg>Added example chart to README.rst.<commit_after>====
pypf
====

Simple set of classes that can be used to generate point and figure charts.
The package also includes a script (pf.py) that can be used to create charts
at the command line that look like this::

    bac  (2017-08-18 o: 23.56 h: 23.90 l: 23.45 c: 23.62)
    1.00% box, 3 box reversal, HL method
    signal: sell status: bear confirmed

    25.93|                                                                        |25.93
    25.68|                      x                                                 |25.68
    25.42|                      u d                                               |25.42
    25.17|                      u d                                     x         |25.17
    24.92|                      u d                                 x   x d       |24.92
    24.68|                  x   u o                                 7 d 8 d u     |24.68
    24.43|                  x d u o                                 x d u d u d   |24.43
    24.19|                  x d 3 o             x   x               x d u d u d   |24.19
    23.95|                  x d   o             x d u d     x   u   x d u o   d   |23.95
    23.71|                  x     o     x   u   x d u d     x d u d x o       d   |23.71
    23.48|                  x     o     u 4 u d x d 5 d x   x d u d u         o   |<< 23.62
    23.25|          x   x   x     o u   u d u d x o   d u d x d   d u             |23.25
    23.02|  x   u   x d x d u     o u d u d   d u     d u d u     o u             |23.02
    22.79|  x d u d x d x d u     o u d u     o u     d u d u     o               |22.79
    22.56|  x d u d x d u d u     o   d u     o u     d   d u                     |22.56
    22.34|  x d u d u d u 2           d u     o           d 6                     |22.34
    22.12|    o   o u d u             d                   d                       |22.12
    21.90|        o 1 d                                                           |21.90
    21.68|        o                                                               |21.68
    21.47|                                                                        |21.47



Installation
------------

Install using pip::

    $ pip3 install pypf

Usage
-----

To use in a program, simply do::

    from pypf.chart import PFChart
    from pypf.instrument import Security
    security = Security(symbol, force_download, force_cache, interval, period)
    chart = PFChart(security, duration, box_size, reversal, method, style)
    chart.create_chart(dump=True)

To use at the command line::

    $ pf.py pf --pf-period 1 --pf-box-size .01 --pf-reversal 3 AAPL

pf.py supports the following arguments::

    usage: pf.py [-h] [-v] [--interval INTERVAL] [--force-cache]
                 [--force-download] [--period PERIOD]
                 command ...
{'fraction_non_alphanumeric': 0.08453333333333334, 'fraction_numerical': 0.054933333333333334, 'mean_word_length': 0.9465490399584847, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 64, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '699188', 'n_tokens_mistral': 1224, 'n_tokens_neox': 1069, 'n_words': 460}