codifx 0.1.1 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,791 @@
1
+ [
2
+ {
3
+ "provider": "yahoo",
4
+ "market": "IDX",
5
+ "symbols": [
6
+ "AALI",
7
+ "ABMM",
8
+ "ACES",
9
+ "ACST",
10
+ "ADES",
11
+ "ADHI",
12
+ "ADMF",
13
+ "ADMG",
14
+ "ADRO",
15
+ "AGII",
16
+ "AGRO",
17
+ "AGRS",
18
+ "AHAP",
19
+ "AIMS",
20
+ "AISA",
21
+ "AKPI",
22
+ "AKRA",
23
+ "AKSI",
24
+ "ALDO",
25
+ "ALKA",
26
+ "AMAG",
27
+ "AMFG",
28
+ "AMIN",
29
+ "AMRT",
30
+ "ANJT",
31
+ "ANTM",
32
+ "APEX",
33
+ "APIC",
34
+ "APII",
35
+ "APLI",
36
+ "APLN",
37
+ "ARGO",
38
+ "ARII",
39
+ "ARNA",
40
+ "ARTA",
41
+ "ARTO",
42
+ "ASBI",
43
+ "ASDM",
44
+ "ASGR",
45
+ "ASII",
46
+ "ASJT",
47
+ "ASRI",
48
+ "ASRM",
49
+ "ASSA",
50
+ "ATIC",
51
+ "AUTO",
52
+ "BABP",
53
+ "BACA",
54
+ "BAJA",
55
+ "BALI",
56
+ "BAPA",
57
+ "BAYU",
58
+ "BBCA",
59
+ "BBHI",
60
+ "BBKP",
61
+ "BBLD",
62
+ "BBMD",
63
+ "BBNI",
64
+ "BBRI",
65
+ "BBRM",
66
+ "BBTN",
67
+ "BBYB",
68
+ "BCAP",
69
+ "BCIC",
70
+ "BCIP",
71
+ "BDMN",
72
+ "BEST",
73
+ "BFIN",
74
+ "BGTG",
75
+ "BINA",
76
+ "BIPI",
77
+ "BIRD",
78
+ "BISI",
79
+ "BJBR",
80
+ "BJTM",
81
+ "BKSL",
82
+ "BKSW",
83
+ "BMAS",
84
+ "BMRI",
85
+ "BMSR",
86
+ "BMTR",
87
+ "BNBA",
88
+ "BNGA",
89
+ "BNII",
90
+ "BNLI",
91
+ "BOLT",
92
+ "BPFI",
93
+ "BPII",
94
+ "BRAM",
95
+ "BRMS",
96
+ "BRNA",
97
+ "BRPT",
98
+ "BSDE",
99
+ "BSIM",
100
+ "BSSR",
101
+ "BTON",
102
+ "BTPN",
103
+ "BUDI",
104
+ "BUKK",
105
+ "BULL",
106
+ "BUMI",
107
+ "BUVA",
108
+ "BVIC",
109
+ "BWPT",
110
+ "BYAN",
111
+ "CASS",
112
+ "CEKA",
113
+ "CENT",
114
+ "CFIN",
115
+ "CINT",
116
+ "CITA",
117
+ "CLPI",
118
+ "CMNP",
119
+ "CPIN",
120
+ "CPRO",
121
+ "CSAP",
122
+ "CTBN",
123
+ "CTRA",
124
+ "CTTH",
125
+ "DART",
126
+ "DEWA",
127
+ "DGIK",
128
+ "DILD",
129
+ "DKFT",
130
+ "DLTA",
131
+ "DMAS",
132
+ "DNAR",
133
+ "DNET",
134
+ "DOID",
135
+ "DPNS",
136
+ "DSFI",
137
+ "DSNG",
138
+ "DSSA",
139
+ "DUTI",
140
+ "DVLA",
141
+ "DYAN",
142
+ "ECII",
143
+ "EKAD",
144
+ "ELSA",
145
+ "EMDE",
146
+ "EMTK",
147
+ "ENRG",
148
+ "EPMT",
149
+ "ERAA",
150
+ "ERTX",
151
+ "ESSA",
152
+ "ESTI",
153
+ "EXCL",
154
+ "FAST",
155
+ "FISH",
156
+ "FMII",
157
+ "FORU",
158
+ "FPNI",
159
+ "GDST",
160
+ "GDYR",
161
+ "GEMA",
162
+ "GEMS",
163
+ "GGRM",
164
+ "GJTL",
165
+ "GMTD",
166
+ "GOLD",
167
+ "GPRA",
168
+ "GSMF",
169
+ "GTBO",
170
+ "GWSA",
171
+ "GZCO",
172
+ "HDFA",
173
+ "HERO",
174
+ "HEXA",
175
+ "HMSP",
176
+ "HRUM",
177
+ "IATA",
178
+ "ICBP",
179
+ "IGAR",
180
+ "IKBI",
181
+ "IMAS",
182
+ "IMJS",
183
+ "IMPC",
184
+ "INAI",
185
+ "INCI",
186
+ "INCO",
187
+ "INDF",
188
+ "INDR",
189
+ "INDS",
190
+ "INDX",
191
+ "INDY",
192
+ "INKP",
193
+ "INPC",
194
+ "INPP",
195
+ "INRU",
196
+ "INTD",
197
+ "INTP",
198
+ "IPOL",
199
+ "ISAT",
200
+ "ISSP",
201
+ "ITMA",
202
+ "ITMG",
203
+ "JAWA",
204
+ "JECC",
205
+ "JIHD",
206
+ "JKON",
207
+ "JPFA",
208
+ "JRPT",
209
+ "JSMR",
210
+ "JSPT",
211
+ "JTPE",
212
+ "KAEF",
213
+ "KBLI",
214
+ "KBLM",
215
+ "KBLV",
216
+ "KDSI",
217
+ "KICI",
218
+ "KIJA",
219
+ "KKGI",
220
+ "KLBF",
221
+ "KOBX",
222
+ "KONI",
223
+ "KOPI",
224
+ "KPIG",
225
+ "KRAS",
226
+ "LAPD",
227
+ "LEAD",
228
+ "LINK",
229
+ "LION",
230
+ "LMPI",
231
+ "LPCK",
232
+ "LPGI",
233
+ "LPIN",
234
+ "LPKR",
235
+ "LPLI",
236
+ "LPPF",
237
+ "LPPS",
238
+ "LRNA",
239
+ "LSIP",
240
+ "LTLS",
241
+ "MAIN",
242
+ "MAPI",
243
+ "MAYA",
244
+ "MBAP",
245
+ "MBSS",
246
+ "MBTO",
247
+ "MCOR",
248
+ "MDKA",
249
+ "MDLN",
250
+ "MEDC",
251
+ "MEGA",
252
+ "MERK",
253
+ "MGNA",
254
+ "MICE",
255
+ "MIDI",
256
+ "MIKA",
257
+ "MITI",
258
+ "MKPI",
259
+ "MLBI",
260
+ "MLIA",
261
+ "MLPL",
262
+ "MLPT",
263
+ "MMLP",
264
+ "MNCN",
265
+ "MPMX",
266
+ "MPPA",
267
+ "MRAT",
268
+ "MREI",
269
+ "MSKY",
270
+ "MTDL",
271
+ "MTLA",
272
+ "MYOH",
273
+ "MYOR",
274
+ "NELY",
275
+ "NIKL",
276
+ "NIRO",
277
+ "NISP",
278
+ "NOBU",
279
+ "NRCA",
280
+ "OKAS",
281
+ "PADI",
282
+ "PALM",
283
+ "PANR",
284
+ "PANS",
285
+ "PDES",
286
+ "PEGE",
287
+ "PGAS",
288
+ "PGLI",
289
+ "PICO",
290
+ "PJAA",
291
+ "PKPK",
292
+ "PNBN",
293
+ "PNBS",
294
+ "PNIN",
295
+ "PNLF",
296
+ "PNSE",
297
+ "PSAB",
298
+ "PSDN",
299
+ "PTBA",
300
+ "PTIS",
301
+ "PTPP",
302
+ "PTRO",
303
+ "PTSN",
304
+ "PTSP",
305
+ "PUDP",
306
+ "PWON",
307
+ "PYFA",
308
+ "RAJA",
309
+ "RALS",
310
+ "RANC",
311
+ "RDTX",
312
+ "RELI",
313
+ "RIGS",
314
+ "ROTI",
315
+ "RUIS",
316
+ "SAFE",
317
+ "SAME",
318
+ "SCCO",
319
+ "SCMA",
320
+ "SDMU",
321
+ "SDPC",
322
+ "SDRA",
323
+ "SGRO",
324
+ "SHID",
325
+ "SIDO",
326
+ "SILO",
327
+ "SIMP",
328
+ "SKBM",
329
+ "SKLT",
330
+ "SMAR",
331
+ "SMBR",
332
+ "SMDM",
333
+ "SMDR",
334
+ "SMGR",
335
+ "SMMA",
336
+ "SMMT",
337
+ "SMRA",
338
+ "SMSM",
339
+ "SOCI",
340
+ "SONA",
341
+ "SPMA",
342
+ "SRAJ",
343
+ "SRSN",
344
+ "SRTG",
345
+ "SSIA",
346
+ "SSMS",
347
+ "SSTM",
348
+ "STTP",
349
+ "SULI",
350
+ "TALF",
351
+ "TBIG",
352
+ "TBLA",
353
+ "TBMS",
354
+ "TCID",
355
+ "TGKA",
356
+ "TIFA",
357
+ "TINS",
358
+ "TIRA",
359
+ "TKIM",
360
+ "TLKM",
361
+ "TMAS",
362
+ "TMPO",
363
+ "TOBA",
364
+ "TOTL",
365
+ "TOTO",
366
+ "TOWR",
367
+ "TPIA",
368
+ "TPMA",
369
+ "TRIM",
370
+ "TRIS",
371
+ "TRST",
372
+ "TRUS",
373
+ "TSPC",
374
+ "ULTJ",
375
+ "UNIC",
376
+ "UNIT",
377
+ "UNTR",
378
+ "UNVR",
379
+ "VICO",
380
+ "VINS",
381
+ "VOKS",
382
+ "VRNA",
383
+ "WAPO",
384
+ "WEHA",
385
+ "WIIM",
386
+ "WINS",
387
+ "WOMF",
388
+ "WTON",
389
+ "YPAS",
390
+ "YULE",
391
+ "SHIP",
392
+ "CASA",
393
+ "DAYA",
394
+ "DPUM",
395
+ "IDPR",
396
+ "KINO",
397
+ "OASA",
398
+ "POWR",
399
+ "PBSA",
400
+ "PRDA",
401
+ "BOGA",
402
+ "BRIS",
403
+ "PORT",
404
+ "CARS",
405
+ "CLEO",
406
+ "CSIS",
407
+ "FIRE",
408
+ "KMTR",
409
+ "MAPB",
410
+ "WOOD",
411
+ "HRTA",
412
+ "HOKI",
413
+ "MPOW",
414
+ "MARK",
415
+ "MDKI",
416
+ "BELL",
417
+ "KIOS",
418
+ "MTWI",
419
+ "MCAS",
420
+ "PPRE",
421
+ "WEGE",
422
+ "PSSI",
423
+ "MORA",
424
+ "DWGL",
425
+ "PBID",
426
+ "JMAS",
427
+ "CAMP",
428
+ "IPCM",
429
+ "LCKM",
430
+ "HELI",
431
+ "GHON",
432
+ "DFAM",
433
+ "NICK",
434
+ "BTPS",
435
+ "SPTO",
436
+ "PRIM",
437
+ "HEAL",
438
+ "TRUK",
439
+ "PZZA",
440
+ "TUGU",
441
+ "MSIN",
442
+ "TNCA",
443
+ "MAPA",
444
+ "TCPI",
445
+ "IPCC",
446
+ "RISE",
447
+ "BPTR",
448
+ "NFCX",
449
+ "MGRO",
450
+ "MOLI",
451
+ "PANI",
452
+ "SAPX",
453
+ "SURE",
454
+ "GOOD",
455
+ "SKRN",
456
+ "YELO",
457
+ "CAKK",
458
+ "SATU",
459
+ "DIVA",
460
+ "LUCK",
461
+ "URBN",
462
+ "SOTS",
463
+ "ZONE",
464
+ "PEHA",
465
+ "BEEF",
466
+ "CLAY",
467
+ "NATO",
468
+ "JAYA",
469
+ "COCO",
470
+ "JAST",
471
+ "FITT",
472
+ "BOLA",
473
+ "CCSI",
474
+ "SFAN",
475
+ "POLU",
476
+ "KJEN",
477
+ "ITIC",
478
+ "PAMG",
479
+ "BLUE",
480
+ "EAST",
481
+ "LIFE",
482
+ "FUJI",
483
+ "INOV",
484
+ "SMKL",
485
+ "HDIT",
486
+ "KEEN",
487
+ "TFAS",
488
+ "GGRP",
489
+ "OPMS",
490
+ "NZIA",
491
+ "SLIS",
492
+ "IRRA",
493
+ "DMMX",
494
+ "WOWS",
495
+ "ESIP",
496
+ "TEBE",
497
+ "KEJU",
498
+ "PSGO",
499
+ "AGAR",
500
+ "IFSH",
501
+ "REAL",
502
+ "IFII",
503
+ "PMJS",
504
+ "UCID",
505
+ "GLVA",
506
+ "PGJO",
507
+ "AMAR",
508
+ "CSRA",
509
+ "INDO",
510
+ "AMOR",
511
+ "TRIN",
512
+ "DMND",
513
+ "PTPW",
514
+ "IKAN",
515
+ "SAMF",
516
+ "RONY",
517
+ "CSMI",
518
+ "BBSS",
519
+ "BHAT",
520
+ "CASH",
521
+ "UANG",
522
+ "PGUN",
523
+ "SOFA",
524
+ "PPGL",
525
+ "SGER",
526
+ "TRJA",
527
+ "PNGO",
528
+ "SCNP",
529
+ "BBSI",
530
+ "KMDS",
531
+ "PURI",
532
+ "SOHO",
533
+ "HOMI",
534
+ "ROCK",
535
+ "PLAN",
536
+ "ATAP",
537
+ "VICI",
538
+ "BANK",
539
+ "EDGE",
540
+ "UNIQ",
541
+ "SNLK",
542
+ "ZYRX",
543
+ "LFLO",
544
+ "TAPG",
545
+ "NPGF",
546
+ "ADCP",
547
+ "HOPE",
548
+ "MGLV",
549
+ "LABA",
550
+ "ARCI",
551
+ "IPAC",
552
+ "MASB",
553
+ "BMHS",
554
+ "FLMC",
555
+ "NICL",
556
+ "UVCR",
557
+ "BUKA",
558
+ "HAIS",
559
+ "OILS",
560
+ "GPSO",
561
+ "MCOL",
562
+ "RUNS",
563
+ "SBMA",
564
+ "CMNT",
565
+ "IDEA",
566
+ "KUAS",
567
+ "BOBA",
568
+ "MTEL",
569
+ "DEPO",
570
+ "BINO",
571
+ "CMRY",
572
+ "WGSH",
573
+ "TAYS",
574
+ "RMKE",
575
+ "OBMD",
576
+ "AVIA",
577
+ "NASI",
578
+ "BSML",
579
+ "DRMA",
580
+ "ADMR",
581
+ "SEMA",
582
+ "ASLC",
583
+ "NETV",
584
+ "ENAK",
585
+ "NTBK",
586
+ "SMKM",
587
+ "STAA",
588
+ "NANO",
589
+ "BIKE",
590
+ "WIRG",
591
+ "SICO",
592
+ "GOTO",
593
+ "TLDN",
594
+ "MTMH",
595
+ "IBOS",
596
+ "OLIV",
597
+ "ASHA",
598
+ "SWID",
599
+ "TRGU",
600
+ "CHEM",
601
+ "DEWI",
602
+ "AXIO",
603
+ "KRYA",
604
+ "HATM",
605
+ "RCCC",
606
+ "GULA",
607
+ "JARR",
608
+ "AMMS",
609
+ "ELPI",
610
+ "EURO",
611
+ "KLIN",
612
+ "TOOL",
613
+ "BUAH",
614
+ "CRAB",
615
+ "MEDS",
616
+ "COAL",
617
+ "PRAY",
618
+ "CBUT",
619
+ "BELI",
620
+ "MKTR",
621
+ "OMED",
622
+ "BSBK",
623
+ "PDPP",
624
+ "KDTN",
625
+ "ZATA",
626
+ "NINE",
627
+ "MMIX",
628
+ "PADA",
629
+ "ISAP",
630
+ "VTNY",
631
+ "SOUL",
632
+ "ELIT",
633
+ "BEER",
634
+ "CBPE",
635
+ "SUNI",
636
+ "CBRE",
637
+ "WINE",
638
+ "BMBL",
639
+ "PEVE",
640
+ "LAJU",
641
+ "FWCT",
642
+ "NAYZ",
643
+ "IRSX",
644
+ "PACK",
645
+ "VAST",
646
+ "CHIP",
647
+ "HALO",
648
+ "KING",
649
+ "PGEO",
650
+ "FUTR",
651
+ "HILL",
652
+ "BDKR",
653
+ "PTMP",
654
+ "CUAN",
655
+ "NSSS",
656
+ "GTRA",
657
+ "HAJJ",
658
+ "JATI",
659
+ "TYRE",
660
+ "MPXL",
661
+ "SMIL",
662
+ "KLAS",
663
+ "MAXI",
664
+ "VKTR",
665
+ "RELF",
666
+ "AMMN",
667
+ "CRSN",
668
+ "GRPM",
669
+ "WIDI",
670
+ "INET",
671
+ "MAHA",
672
+ "RMKO",
673
+ "CNMA",
674
+ "FOLK",
675
+ "HBAT",
676
+ "GRIA",
677
+ "PPRI",
678
+ "ERAL",
679
+ "CYBR",
680
+ "MUTU",
681
+ "LMAX",
682
+ "HUMI",
683
+ "MSIE",
684
+ "RSCH",
685
+ "BABY",
686
+ "AEGS",
687
+ "IOTF",
688
+ "KOCI",
689
+ "PTPS",
690
+ "BREN",
691
+ "STRK",
692
+ "KOKA",
693
+ "LOPI",
694
+ "UDNG",
695
+ "RGAS",
696
+ "MSTI",
697
+ "IKPM",
698
+ "SURI",
699
+ "GRPH",
700
+ "SMGA",
701
+ "UNTD",
702
+ "TOSK",
703
+ "MPIX",
704
+ "ALII",
705
+ "MKAP",
706
+ "MEJA",
707
+ "LIVE",
708
+ "HYGN",
709
+ "BAIK",
710
+ "VISI",
711
+ "AREA",
712
+ "MHKI",
713
+ "ATLA",
714
+ "DATA",
715
+ "SOLA",
716
+ "BATR",
717
+ "SPRE",
718
+ "PART",
719
+ "GOLF",
720
+ "ISEA",
721
+ "BLES",
722
+ "GUNA",
723
+ "LABS",
724
+ "DOSS",
725
+ "NEST",
726
+ "VERN",
727
+ "DAAZ",
728
+ "BOAT",
729
+ "NAIK",
730
+ "AADI",
731
+ "MDIY",
732
+ "KSIX",
733
+ "RATU",
734
+ "YOII",
735
+ "HGII",
736
+ "BRRC",
737
+ "DGWG",
738
+ "CBDK",
739
+ "OBAT",
740
+ "MINE",
741
+ "ASPR",
742
+ "PSAT",
743
+ "COIN",
744
+ "CDIA",
745
+ "BLOG",
746
+ "MERI",
747
+ "CHEK",
748
+ "PMUI",
749
+ "EMAS",
750
+ "PJHB",
751
+ "RLCO",
752
+ "SUPA",
753
+ "KAQI",
754
+ "YUPI",
755
+ "FORE",
756
+ "MDLA",
757
+ "DKHH",
758
+ "AYLS",
759
+ "DADA",
760
+ "ASPI",
761
+ "ESTA",
762
+ "BESS",
763
+ "AMAN",
764
+ "CARE",
765
+ "PIPA",
766
+ "NCKL",
767
+ "MENN",
768
+ "AWAN",
769
+ "MBMA",
770
+ "RAAM",
771
+ "DOOH",
772
+ "CGAS",
773
+ "NICE",
774
+ "MSJA",
775
+ "SMLE",
776
+ "ACRO",
777
+ "MANG",
778
+ "WIFI",
779
+ "FAPA",
780
+ "DCII",
781
+ "KETR",
782
+ "DGNS",
783
+ "UFOE"
784
+ ]
785
+ },
786
+ {
787
+ "provider": "yahoo",
788
+ "market": "NASDAQ",
789
+ "symbols": []
790
+ }
791
+ ]
package/dist/cli/index.js CHANGED
@@ -7,11 +7,17 @@ import { simulateCommand } from "./commands/simulate.js";
7
7
  import { profileCommand } from "./commands/profile.js";
8
8
  import { validateCommand } from "./commands/validate.js";
9
9
  import { explainCommand } from "./commands/explain.js";
10
+ import { readFileSync } from "fs";
11
+ import { join, dirname } from "path";
12
+ import { fileURLToPath } from "url";
13
+ // Get package version
14
+ const __dirname = dirname(fileURLToPath(import.meta.url));
15
+ const packageJson = JSON.parse(readFileSync(join(__dirname, "../../package.json"), "utf-8"));
10
16
  const program = new Command();
11
17
  program
12
18
  .name("codifx")
13
19
  .description("Professional multi-type trading scanner CLI")
14
- .version("0.1.0");
20
+ .version(packageJson.version);
15
21
  // Global options
16
22
  program
17
23
  .option("--trade-type <type>", "Trading type: scalp, day, or swing")
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAKhD;;GAEG;AACH,wBAAsB,WAAW,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CA8CxE;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAO3E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAGhE"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAKhD;;GAEG;AACH,wBAAsB,WAAW,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CA4DxE;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAO3E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAGhE"}
@@ -24,16 +24,30 @@ export async function loadProfile(profilePath) {
24
24
  try {
25
25
  const content = await readFile(configPath, "utf-8");
26
26
  const data = JSON.parse(content);
27
- // Load global datasource config if not specified in profile
27
+ // Load global watchlist config if not specified in profile
28
28
  if (!data.dataSource) {
29
29
  const packageRoot = new URL("../../", import.meta.url).pathname;
30
- const datasourcePath = join(packageRoot, "config", "datasource.json");
30
+ const watchlistPath = join(packageRoot, "config", "watchlist.json");
31
31
  try {
32
- const dsContent = await readFile(datasourcePath, "utf-8");
33
- data.dataSource = JSON.parse(dsContent);
32
+ const watchlistContent = await readFile(watchlistPath, "utf-8");
33
+ const watchlists = JSON.parse(watchlistContent);
34
+ // Default market preference: IDX > NASDAQ
35
+ const defaultMarket = "IDX";
36
+ // Find watchlist for the default market
37
+ const watchlist = Array.isArray(watchlists)
38
+ ? watchlists.find((w) => w.market === defaultMarket) ||
39
+ watchlists[0]
40
+ : watchlists;
41
+ if (watchlist) {
42
+ data.dataSource = {
43
+ provider: watchlist.provider,
44
+ market: watchlist.market,
45
+ defaultSymbols: watchlist.symbols || watchlist.defaultSymbols,
46
+ };
47
+ }
34
48
  }
35
49
  catch (error) {
36
- // If global datasource doesn't exist, it's okay - profile can have its own
50
+ // If global watchlist doesn't exist, it's okay - profile can have its own
37
51
  }
38
52
  }
39
53
  // Validate with Zod schema
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAG3C,MAAM,eAAe,GAAG,kBAAkB,CAAA;AAC1C,MAAM,WAAW,GAAG,UAAU,CAAA;AAE9B;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,WAAoB;IAClD,IAAI,UAAkB,CAAA;IAEtB,IAAI,WAAW,EAAE,CAAC;QACd,oBAAoB;QACpB,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;IACrC,CAAC;SAAM,CAAC;QACJ,wCAAwC;QACxC,wEAAwE;QACxE,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAA;QAC/D,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,WAAW,EAAE,eAAe,CAAC,CAAA;IAChE,CAAC;IAED,IAAI,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;QACnD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAEhC,4DAA4D;QAC5D,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAA;YAC/D,MAAM,cAAc,GAAG,IAAI,CACvB,WAAW,EACX,QAAQ,EACR,iBAAiB,CACpB,CAAA;YAED,IAAI,CAAC;gBACD,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC,CAAA;gBACzD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YAC3C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,2EAA2E;YAC/E,CAAC;QACL,CAAC;QAED,2BAA2B;QAC3B,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAE3C,OAAO,SAAoB,CAAA;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CACX,+BAA+B,UAAU,KAAK,KAAK,CAAC,OAAO,EAAE,CAChE,CAAA;QACL,CAAC;QACD,MAAM,KAAK,CAAA;IACf,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,WAAmB;IACrD,IAAI,CAAC;QACD,MAAM,WAAW,CAAC,WAAW,CAAC,CAAA;QAC9B,OAAO,IAAI,CAAA;IACf,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,KAAK,CAAA;IAChB,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,WAAmB;IACpD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAA;IAC/D,OAAO,IAAI,CAAC,WAAW,EAAE,WAAW,EAAE,GAAG,WAAW,eAAe,CAAC,CAAA;AACxE,CAAC"}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAG3C,MAAM,eAAe,GAAG,kBAAkB,CAAA;AAC1C,MAAM,WAAW,GAAG,UAAU,CAAA;AAE9B;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,WAAoB;IAClD,IAAI,UAAkB,CAAA;IAEtB,IAAI,WAAW,EAAE,CAAC;QACd,oBAAoB;QACpB,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;IACrC,CAAC;SAAM,CAAC;QACJ,wCAAwC;QACxC,wEAAwE;QACxE,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAA;QAC/D,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,WAAW,EAAE,eAAe,CAAC,CAAA;IAChE,CAAC;IAED,IAAI,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;QACnD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAEhC,2DAA2D;QAC3D,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAA;YAC/D,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAA;YAEnE,IAAI,CAAC;gBACD,MAAM,gBAAgB,GAAG,MAAM,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;gBAC/D,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;gBAE/C,0CAA0C;gBAC1C,MAAM,aAAa,GAAG,KAAK,CAAA;gBAE3B,wCAAwC;gBACxC,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;oBACvC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC;wBAClD,UAAU,CAAC,CAAC,CAAC;oBACf,CAAC,CAAC,UAAU,CAAA;gBAEhB,IAAI,SAAS,EAAE,CAAC;oBACZ,IAAI,CAAC,UAAU,GAAG;wBACd,QAAQ,EAAE,SAAS,CAAC,QAAQ;wBAC5B,MAAM,EAAE,SAAS,CAAC,MAAM;wBACxB,cAAc,EACV,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,cAAc;qBACpD,CAAA;gBACL,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,0EAA0E;YAC9E,CAAC;QACL,CAAC;QAED,2BAA2B;QAC3B,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAE3C,OAAO,SAAoB,CAAA;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CACX,+BAA+B,UAAU,KAAK,KAAK,CAAC,OAAO,EAAE,CAChE,CAAA;QACL,CAAC;QACD,MAAM,KAAK,CAAA;IACf,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,WAAmB;IACrD,IAAI,CAAC;QACD,MAAM,WAAW,CAAC,WAAW,CAAC,CAAA;QAC9B,OAAO,IAAI,CAAA;IACf,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,KAAK,CAAA;IAChB,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,WAAmB;IACpD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAA;IAC/D,OAAO,IAAI,CAAC,WAAW,EAAE,WAAW,EAAE,GAAG,WAAW,eAAe,CAAC,CAAA;AACxE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codifx",
3
- "version": "0.1.1",
3
+ "version": "0.1.3",
4
4
  "description": "Professional multi-type trading scanner CLI supporting scalping, day trading, and swing trading",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -11,6 +11,7 @@
11
11
  "dist",
12
12
  "bin",
13
13
  "profiles",
14
+ "config",
14
15
  "templates",
15
16
  "README.md",
16
17
  "LICENSE",