From 2618f7b7ae4a7ba389c0baa88a8733717f0e19dc Mon Sep 17 00:00:00 2001 From: VaclavT Date: Mon, 22 Feb 2021 01:25:07 +0100 Subject: [PATCH] readme entry --- Readme.md | 4 ++++ tmp/divi-dates.lsp | 33 --------------------------------- tmp/malformed_program.lsp | 25 +++++++++++++++++++++++++ 3 files changed, 29 insertions(+), 33 deletions(-) delete mode 100644 tmp/divi-dates.lsp create mode 100644 tmp/malformed_program.lsp diff --git a/Readme.md b/Readme.md index 2bf7a39..1f4a9b4 100644 --- a/Readme.md +++ b/Readme.md @@ -1,5 +1,9 @@ +### BUGS +- see malformed_program - wrong parsing of comments + ### TODO +- use file suffix .lsp instead of .lisp - make-list - print-table - download 1 year of data from api.nasdaq.com into test dir diff --git a/tmp/divi-dates.lsp b/tmp/divi-dates.lsp deleted file mode 100644 index dfd8f92..0000000 --- a/tmp/divi-dates.lsp +++ /dev/null @@ -1,33 +0,0 @@ -; (print (make-csv (divi-dates "2021-02-01"))) -(defun divi-dates (date-str) - (do - (define curl_cmd (+ "curl -H \"Accept: application/json, text/plain, */*\" -H \"Origin: https://www.nasdaq.com/\" -H \"User-Agent: Mozilla/5.0 (Windows NT 10.0)\" https://api.nasdaq.com/api/calendar/dividends/?date=" date-str " 2>/dev/null")) - (define curl_out (system-cmd curl_cmd)) - - (define json_list (parse-json (last curl_out))) - - (define data (first json_list)) - (define calendar (index data 1)) - (define calendar_data (index (index calendar 0) 1)) - (define header (index (index calendar_data 0) 1)) - (define rows (index (index calendar_data 1) 1)) - - ; (define csv_list '()) - (define csv_list '(("symbol" "ex-date" "pay-date" "div-rate"))) - (if (!= rows '@) - (for e rows - ; (("announcement_Date" "01/07/2021") ("companyName" "Itau Unibanco Banco Holding SA") ("dividend_Ex_Date" "02/01/2021") ("dividend_Rate" 0.003) ("indicated_Annual_Dividend" 0.033) ("payment_Date" "03/11/2021") ("record_Date" "02/02/2021") ("symbol" "ITUB")) - (define symbol (second (first (filter (lambda (x) (= (first x) "symbol")) e)))) - (define divrate (second (first (filter (lambda (x) (= (first x) "dividend_Rate")) e)))) - (define adate (second (first (filter (lambda (x) (= (first x) "announcement_Date")) e)))) - (define name (second (first (filter (lambda (x) (= (first x) "companyName")) e)))) - (define exdate (second (first (filter (lambda (x) (= (first x) "dividend_Ex_Date")) e)))) - (define paydate (second (first (filter (lambda (x) (= (first x) "payment_Date")) e)))) - (define rdate (second (first (filter (lambda (x) (= (first x) "record_Date")) e)))) - - (define csv_list (push csv_list (list symbol exdate paydate divrate)))) - '()) - - csv_list - )) - diff --git a/tmp/malformed_program.lsp b/tmp/malformed_program.lsp new file mode 100644 index 0000000..d6ec78b --- /dev/null +++ b/tmp/malformed_program.lsp @@ -0,0 +1,25 @@ +(print "Debug starts") + +(define csv_list '()) +(for f (ls-dir "tests/divi") + (if (regex-search? f "^divi_2021-02-0[1].*\.csv$") + (do + (define filename (+ "tests/divi/" f)) + ; (print filename) + (define csv_str (read-file filename)) + (define csv_file_list (parse-csv csv_str)) + (define csv_list (+ csv_list csv_file_list)) + ; (for x csv_file_list + ; (print x) + ; (define csv_list (+ csv_list csv_file_list)) + ; ) + ) + )) + +(for x csv_list + (print x)) + +; (if (> 1 10) +; (print "aaa")) + +(print "Debug ends")