def tech():
    id_focus = input("ID action > ")
    symbol = input("entreprise symbole > ")
    exchange = input("place bourisère > ")
    country = input("pays > ")

    print("Analyse technique :")

    try:
        _object = TA_Handler()
        _object.set_symbol_as(symbol)
        _object.set_exchange_as_crypto_or_stock(exchange)
        _object.set_screener_as_stock(country)
        _object.set_interval_as(Interval.INTERVAL_1_DAY)
        tradingview_result = _object.get_analysis().summary
        print("1 jour >", tradingview_result)

        _object.set_interval_as(Interval.INTERVAL_1_WEEK)
        tradingview_result = _object.get_analysis().summary
        print("1 sem >", tradingview_result)

        _object.set_interval_as(Interval.INTERVAL_1_MONTH)
        tradingview_result = _object.get_analysis().summary
        print("1 mois >", tradingview_result)

        print("Infos ajoutée en DB")
        with connexion:
            c.execute(
                f"UPDATE ACTIONS SET tec_exchange = '{exchange}', tec_country = '{country}' WHERE id = {id_focus};"
            )
    except:
        print("ERREUR > une ou plusieures données sont érronées.")
def t_infos():

    symbol = input("entreprise symbole :\n> ")
    exchange = input("place bourisère :\n> ")
    country = input("pays: \n> ")

    print("Résultats analyses techniques", symbol, ":")

    try:
        _object = TA_Handler()
        _object.set_symbol_as(symbol)
        _object.set_exchange_as_crypto_or_stock(exchange)
        _object.set_screener_as_stock(country)
        _object.set_interval_as(Interval.INTERVAL_1_DAY)
        test = _object.get_analysis().summary

        print("1 jour >", test)

        _object.set_interval_as(Interval.INTERVAL_1_WEEK)
        test = _object.get_analysis().summary
        print("1 sem >", test)

        _object.set_interval_as(Interval.INTERVAL_1_MONTH)
        test = _object.get_analysis().summary
        print("1 mois >", test)
        print("-" * 100)
    except:
        print("ERREUR > une ou plusieures données sont érronées.")
Exemple #3
0
 def get_data_from_tradingView(self):
     # dataframeSPY = pd.read_csv("data/SPY.csv")
     # dataframeSPY['time'] = pd.to_datetime(dataframeSPY['time'], unit='s')
     # print(dataframeSPY.tail())
     tesla = TA_Handler()
     tesla.set_symbol_as("TSLA")
     tesla.set_exchange_as_crypto_or_stock("NASDAQ")
     tesla.set_screener_as_stock("america")
     tesla.set_interval_as(Interval.INTERVAL_1_DAY)
     print(tesla.get_analysis().summary)
def get_stock_indicators_list(
    lista=list
):  #Get sell/buy indicators for multiple stocks from a list, and print the results
    handler = TA_Handler()
    for i in range(len(lista)):
        handler.set_symbol_as(lista[i][0])
        handler.set_exchange_as_crypto_or_stock("NASDAQ")
        handler.set_screener_as_stock("america")
        handler.set_interval_as(Interval.INTERVAL_1_HOUR)
        stock = handler.get_analysis().summary
        stock_table = []
        for b in stock.items():
            stock_table.append(b)
        stock_table.insert(0, ["Company: " + lista[i][0].upper(), "Result"])
        stock_table = AsciiTable(stock_table)
        print(stock_table.table)
Exemple #5
0
def root():
    if request.method == "GET":
        return render_template("index.html",
                               version=tradingview_ta.__version__,
                               captcha_sitekey=hcaptcha_sitekey)
    elif request.method == "POST":
        try:
            # hCaptcha
            hcaptcha_response = request.form["h-captcha-response"]
            captchaReq = requests.post("https://hcaptcha.com/siteverify",
                                       data={
                                           "secret": hcaptcha_secret,
                                           "response": hcaptcha_response
                                       })
            if captchaReq.json()["success"] == False:
                return render_template("error.html",
                                       version=tradingview_ta.__version__,
                                       error="Error: Invalid captcha",
                                       captcha_sitekey=hcaptcha_sitekey)

            # TradingView Technical Analysis
            handler = TA_Handler()
            handler.set_symbol_as(request.form["symbol"])
            handler.set_exchange_as_crypto_or_stock(request.form["exchange"])
            handler.set_screener_as_stock(request.form["screener"])
            handler.set_interval_as(request.form["interval"])
            analysis = handler.get_analysis()
            return render_template("success.html",
                                   version=tradingview_ta.__version__,
                                   symbol=analysis.symbol,
                                   exchange=analysis.exchange,
                                   screener=analysis.screener,
                                   interval=analysis.interval,
                                   time=analysis.time.astimezone(timezone.utc),
                                   summary=analysis.summary,
                                   oscillators=analysis.oscillators,
                                   moving_averages=analysis.moving_averages,
                                   indicators=analysis.indicators,
                                   captcha_sitekey=hcaptcha_sitekey)
        except Exception as e:
            return render_template("error.html",
                                   version=tradingview_ta.__version__,
                                   error=e,
                                   captcha_sitekey=hcaptcha_sitekey)
def get_stock_indicators_manual(
):  #Get sell/buy indicators from tradingview_ta for one stock, with user input and print the result
    handler = TA_Handler()
    symbol = loop_simples_de_coleta(configleng[4], configleng[0],
                                    configleng[2])
    handler.set_symbol_as(symbol)
    exchange = loop_simples_de_coleta(configleng[5], configleng[0],
                                      configleng[2])
    handler.set_exchange_as_crypto_or_stock(exchange)
    handler.set_screener_as_stock(
        loop_simples_de_coleta(configleng[8], configleng[0], configleng[2]))
    r = str(interval_options())
    handler.set_interval_as(r)
    stock = handler.get_analysis().summary
    stock_table = []
    for i in stock.items():
        stock_table.append(i)
    stock_table.insert(0, ["Company: " + symbol.upper(), "Result"])
    stock_table = AsciiTable(stock_table)
    print(stock_table.table)
Exemple #7
0
from django.contrib.auth.decorators import login_required
from django.db.models import F
from django.shortcuts import render, redirect
from django.http import HttpResponse
from .models import Shares
from .forms import SharesForm
from django.contrib import messages
from django.core.paginator import Paginator
from tradingview_ta import TA_Handler, Interval

tesla = TA_Handler()
tesla.set_symbol_as("TSLA")
tesla.set_exchange_as_crypto_or_stock("NASDAQ")
tesla.set_screener_as_stock("america")
tesla.set_interval_as(Interval.INTERVAL_1_DAY)
print(tesla.get_analysis().summary)
# Example output: {"RECOMMENDATION": "BUY", "BUY": 8, "NEUTRAL": 6, "SELL": 3}


@login_required
def index(request, message=messages):

    all_shares = Shares.objects.filter()
    paginator = Paginator(all_shares, 10)
    page = request.GET.get('pg')
    all_shares = paginator.get_page(page)
    return render(request, 'index.html', {'all_shares': all_shares})


@login_required
def add_shares(request):
# In[ ]:
import pandas as pd
from tradingview_ta import TA_Handler, Interval
from tqdm import trange
import time
import datetime as dt
#########
tickers = pd.read_csv('dataset/ind_nifty50list.csv')
tickers = pd.DataFrame(tickers.Symbol)
########
dictionary = {'-': '_', '&': '_'}
tickers.replace(dictionary, regex=True, inplace=True)
Stock = {}
handler = TA_Handler()
handler.set_exchange_as_crypto_or_stock("NSE")
handler.set_screener_as_stock("india")
tickers['Strength'] = 0
while True:
    handler.set_interval_as(Interval.INTERVAL_1_HOUR)
    # tickers.shape[0]
    for i in trange(tickers.shape[0]):
        try:
            handler.set_symbol_as(tickers.Symbol[i])
            Stock[tickers.Symbol[i]] = [
                handler.get_analysis().summary['RECOMMENDATION'],
                handler.get_analysis().indicators['close']
            ]
            #print([i],tickers[i],handler.get_analysis().summary['RECOMMENDATION'])

        except:
            print("An exception occurred", tickers[i])
Exemple #9
0
cls()

print("Bienvenue sur Tradyglo v.BETA")
while i == 0:
    symbol = input("entreprise symbole > ")
    exchange = input("place bourisère > ")
    country = input("pays > ")

    print("-" * 100)
    print("Résultats analyses techniques", symbol, ":")

    _object = TA_Handler()
    _object.set_symbol_as(symbol)
    _object.set_exchange_as_crypto_or_stock(exchange)
    _object.set_screener_as_stock(country)
    _object.set_interval_as(Interval.INTERVAL_1_DAY)
    test = _object.get_analysis().summary

    print("1 jour >", test)

    _object.set_interval_as(Interval.INTERVAL_1_WEEK)
    test = _object.get_analysis().summary
    print("1 sem >", test)

    _object.set_interval_as(Interval.INTERVAL_1_MONTH)
    test = _object.get_analysis().summary
    print("1 mois >", test)
    print("\n")

#cls()
Exemple #10
0
def analyse_technique(id_infos):

    print("Analyse technique :")

    try:
        with connexion:
            c.execute(
                f"SELECT tec_symbol, tec_exchange, tec_country FROM actions where id = {id_infos};"
            )
            result = c.fetchone()
            tec_symbol = result[0]
            tec_exchange = result[1]
            tec_country = result[2]

            try:  #1- on tente avec ce qui est stocké en db
                _object = TA_Handler()
                _object.set_symbol_as(tec_symbol)
                _object.set_exchange_as_crypto_or_stock(tec_exchange)
                _object.set_screener_as_stock(tec_country)

                _object.set_interval_as(Interval.INTERVAL_1_DAY)
                tradingview_result = _object.get_analysis().summary

                _object.set_interval_as(Interval.INTERVAL_1_WEEK)
                tradingview_result2 = _object.get_analysis().summary

                _object.set_interval_as(Interval.INTERVAL_1_MONTH)
                tradingview_result3 = _object.get_analysis().summary

                c.execute(
                    f"UPDATE ACTIONS SET tec_exchange = '{tec_exchange}', tec_country = '{tec_country}' WHERE id = {id_infos};"
                )

                print("1 jour >", tradingview_result)
                print("1 sem >", tradingview_result2)
                print("1 mois >", tradingview_result3)
            except:
                tec_country = "AMERICA"
                tec_exchange = "NYSE"

                try:
                    _object = TA_Handler()
                    _object.set_symbol_as(tec_symbol)
                    _object.set_exchange_as_crypto_or_stock(tec_exchange)
                    _object.set_screener_as_stock(tec_country)

                    _object.set_interval_as(Interval.INTERVAL_1_DAY)
                    tradingview_result = _object.get_analysis().summary

                    _object.set_interval_as(Interval.INTERVAL_1_WEEK)
                    tradingview_result2 = _object.get_analysis().summary

                    _object.set_interval_as(Interval.INTERVAL_1_MONTH)
                    tradingview_result3 = _object.get_analysis().summary

                    c.execute(
                        f"UPDATE ACTIONS SET tec_exchange = '{tec_exchange}', tec_country = '{tec_country}' WHERE id = {id_infos};"
                    )

                    print("1 jour >", tradingview_result)
                    print("1 sem >", tradingview_result2)
                    print("1 mois >", tradingview_result3)

                except:
                    tec_country = "AMERICA"
                    tec_exchange = "NASDAQ"
                    try:
                        _object = TA_Handler()
                        _object.set_symbol_as(tec_symbol)
                        _object.set_exchange_as_crypto_or_stock(tec_exchange)
                        _object.set_screener_as_stock(tec_country)

                        _object.set_interval_as(Interval.INTERVAL_1_DAY)
                        tradingview_result = _object.get_analysis().summary

                        _object.set_interval_as(Interval.INTERVAL_1_WEEK)
                        tradingview_result2 = _object.get_analysis().summary

                        _object.set_interval_as(Interval.INTERVAL_1_MONTH)
                        tradingview_result3 = _object.get_analysis().summary

                        c.execute(
                            f"UPDATE ACTIONS SET tec_exchange = '{tec_exchange}', tec_country = '{tec_country}' WHERE id = {id_infos};"
                        )

                        print("1 jour >", tradingview_result)
                        print("1 sem >", tradingview_result2)
                        print("1 mois >", tradingview_result3)

                    except:
                        print(
                            "Aucune donnée d'analyse technique, utilisez .tech"
                        )

    except:
        print("ERROR 14")