11import logging
22import sqlite3
3- from typing import Dict , Any , List
3+ from typing import Dict , Any , List , Tuple
44
55from bot import setup
66
@@ -31,7 +31,7 @@ def create_tables(config: Dict[str, Any]) -> None:
3131 con .close ()
3232
3333 if TRADES_TABLE_NAME not in table_names :
34- logger .info ("Creating database table {}..." .format (TRADES_TABLE_NAME ))
34+ logger .info ("Creating database table {} ..." .format (TRADES_TABLE_NAME ))
3535 con = create_connection (config )
3636
3737 # Create open trades table
@@ -45,42 +45,65 @@ def create_tables(config: Dict[str, Any]) -> None:
4545
4646
4747def add_ticker (ticker : str , company_name : str , category : str , config : Dict [str , Any ]) -> None :
48+
49+ logger .info ("Adding ticker {} to registry..." .format (ticker ))
50+
4851 con = create_connection (config )
4952 cursor = con .cursor ()
5053
51- logger .info ("Adding ticker {} ..." .format (ticker ))
54+ # Add ticker if not exists
55+ insert_statement = """
56+ INSERT INTO TICKERS (ticker, company_name, category)
57+ VALUES (?, ?, ?);
58+ """
5259
53- # Get ticker if exists
54- select_statement = """SELECT ticker_id from TICKERS where ticker = ?"""
55- cursor .execute (select_statement , (ticker ,))
60+ data_tuple = (ticker , company_name , category )
61+ cursor .execute (insert_statement , data_tuple )
5662
57- result = cursor .fetchall ()
63+ con .commit ()
64+ con .close ()
5865
59- if result :
60- logger .info ("Ticker already in database" )
61- else :
62- # Add ticker if not exists
63- insert_statement = """
64- INSERT INTO TICKERS (ticker, company_name, category)
65- VALUES (?, ?, ?);
66- """
6766
68- data_tuple = (ticker , company_name , category )
69- cursor .execute (insert_statement , data_tuple )
67+ def remove_ticker (ticker : str , config : Dict [str , Any ]) -> None :
7068
69+ logger .info ("Removing ticker {} from registry ..." .format (ticker ))
70+ con = create_connection (config )
71+ cursor = con .cursor ()
72+
73+ delete_statement = '''
74+ DELETE from TICKERS where ticker = ?
75+ '''
76+
77+ cursor .execute (delete_statement , (ticker ,))
7178 con .commit ()
7279 con .close ()
7380
7481
75- def get_company_info (ticker : str , config : Dict [str , any ]) -> List [str ]:
82+ def get_company_profile (ticker : str , config : Dict [str , any ]) -> Tuple [str ]:
7683 con = create_connection (config )
7784 cursor = con .cursor ()
7885
79- logger .info ("Getting {} company info ..." .format (ticker ))
86+ logger .info ("Getting {} company info from registry ..." .format (ticker ))
87+
88+ cursor .execute (" SELECT * FROM TICKERS WHERE ticker=?" , (ticker , ))
89+ result = cursor .fetchall ()
90+
91+ con .close ()
92+ return result
93+
94+
95+ def get_tickers (config : Dict [str , any ]) -> List [str ]:
96+ con = create_connection (config )
97+ cursor = con .cursor ()
98+
99+ logger .info ("Getting all tickers from registry ..." )
80100
81101 # Get ticker if exists
82- select_statement = """SELECT ticker_id from TICKERS where ticker = ?"""
83- cursor .execute (select_statement , (ticker ,))
102+ select_statement = '''
103+ SELECT (ticker) from TICKERS
104+ '''
105+
106+ cursor .execute (select_statement )
84107 result = cursor .fetchall ()
85108 con .close ()
86109 return result
0 commit comments