From 174cbc8b88b5c0f41f0f6bb362c8ab510c98f678 Mon Sep 17 00:00:00 2001 From: Tanut Lertwarachai Date: Wed, 1 Apr 2026 10:56:12 +0700 Subject: [PATCH 1/2] add forex symbol --- .github/scripts/aggregate_signals.py | 6 +++--- signals/FS.yaml | 8 ++++++++ signals/FS/AUD-USD.yaml | 7 +++++++ signals/FS/BRL-USD.yaml | 7 +++++++ signals/FS/CAD-USD.yaml | 7 +++++++ signals/FS/CHF-USD.yaml | 7 +++++++ signals/FS/CNY-USD.yaml | 7 +++++++ signals/FS/CZK-USD.yaml | 7 +++++++ signals/FS/EUR-USD.yaml | 7 +++++++ signals/FS/GBP-USD.yaml | 7 +++++++ signals/FS/HKD-USD.yaml | 7 +++++++ signals/FS/INR-USD.yaml | 7 +++++++ signals/FS/JPY-USD.yaml | 7 +++++++ signals/FS/KRW-USD.yaml | 7 +++++++ signals/FS/MYR-USD.yaml | 7 +++++++ signals/FS/NZD-USD.yaml | 7 +++++++ signals/FS/PHP-USD.yaml | 7 +++++++ signals/FS/PLN-USD.yaml | 7 +++++++ signals/FS/RUB-USD.yaml | 7 +++++++ signals/FS/SEK-USD.yaml | 7 +++++++ signals/FS/SGD-USD.yaml | 7 +++++++ signals/FS/THB-USD.yaml | 7 +++++++ signals/FS/TRY-USD.yaml | 7 +++++++ signals/FS/TWD-USD.yaml | 7 +++++++ signals/FS/XAU-USD.yaml | 7 +++++++ 25 files changed, 172 insertions(+), 3 deletions(-) create mode 100644 signals/FS.yaml create mode 100644 signals/FS/AUD-USD.yaml create mode 100644 signals/FS/BRL-USD.yaml create mode 100644 signals/FS/CAD-USD.yaml create mode 100644 signals/FS/CHF-USD.yaml create mode 100644 signals/FS/CNY-USD.yaml create mode 100644 signals/FS/CZK-USD.yaml create mode 100644 signals/FS/EUR-USD.yaml create mode 100644 signals/FS/GBP-USD.yaml create mode 100644 signals/FS/HKD-USD.yaml create mode 100644 signals/FS/INR-USD.yaml create mode 100644 signals/FS/JPY-USD.yaml create mode 100644 signals/FS/KRW-USD.yaml create mode 100644 signals/FS/MYR-USD.yaml create mode 100644 signals/FS/NZD-USD.yaml create mode 100644 signals/FS/PHP-USD.yaml create mode 100644 signals/FS/PLN-USD.yaml create mode 100644 signals/FS/RUB-USD.yaml create mode 100644 signals/FS/SEK-USD.yaml create mode 100644 signals/FS/SGD-USD.yaml create mode 100644 signals/FS/THB-USD.yaml create mode 100644 signals/FS/TRY-USD.yaml create mode 100644 signals/FS/TWD-USD.yaml create mode 100644 signals/FS/XAU-USD.yaml diff --git a/.github/scripts/aggregate_signals.py b/.github/scripts/aggregate_signals.py index 4197e4b..9b1378d 100644 --- a/.github/scripts/aggregate_signals.py +++ b/.github/scripts/aggregate_signals.py @@ -19,8 +19,8 @@ def main(input_path: str, output_path: str): print(f"Missing {d}.yaml") exit(1) + signal_ids: dict[str, OrderedDict] = defaultdict(OrderedDict) for root, _, files in iter_: - signal_ids: dict[str, OrderedDict] = defaultdict(OrderedDict) prefix = root.split('/')[-1] for file in sorted(files): with open(os.path.join(root, file), 'r') as f: @@ -33,8 +33,8 @@ def main(input_path: str, output_path: str): if not os.path.exists(output_path): os.makedirs(output_path) - with open(f"{output_path}/registry.json", 'w') as f: - json.dump(signal_ids, f, indent=4) + with open(f"{output_path}/registry.json", 'w') as f: + json.dump(signal_ids, f, indent=4) if __name__ == '__main__': diff --git a/signals/FS.yaml b/signals/FS.yaml new file mode 100644 index 0000000..c01ecef --- /dev/null +++ b/signals/FS.yaml @@ -0,0 +1,8 @@ +processor: + function: weighted_median + params: + source_weights: + band/fieldfare: 1 + band/owlet: 1 + band/xenops: 1 + minimum_cumulative_weight: 1 diff --git a/signals/FS/AUD-USD.yaml b/signals/FS/AUD-USD.yaml new file mode 100644 index 0000000..4be4e8d --- /dev/null +++ b/signals/FS/AUD-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:AUD-USD +- source_id: band/owlet + id: FS:AUD-USD +- source_id: band/xenops + id: FS:AUD-USD diff --git a/signals/FS/BRL-USD.yaml b/signals/FS/BRL-USD.yaml new file mode 100644 index 0000000..88435d8 --- /dev/null +++ b/signals/FS/BRL-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:BRL-USD +- source_id: band/owlet + id: FS:BRL-USD +- source_id: band/xenops + id: FS:BRL-USD diff --git a/signals/FS/CAD-USD.yaml b/signals/FS/CAD-USD.yaml new file mode 100644 index 0000000..1b4fe0e --- /dev/null +++ b/signals/FS/CAD-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:CAD-USD +- source_id: band/owlet + id: FS:CAD-USD +- source_id: band/xenops + id: FS:CAD-USD diff --git a/signals/FS/CHF-USD.yaml b/signals/FS/CHF-USD.yaml new file mode 100644 index 0000000..ace3b4c --- /dev/null +++ b/signals/FS/CHF-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:CHF-USD +- source_id: band/owlet + id: FS:CHF-USD +- source_id: band/xenops + id: FS:CHF-USD diff --git a/signals/FS/CNY-USD.yaml b/signals/FS/CNY-USD.yaml new file mode 100644 index 0000000..c15f333 --- /dev/null +++ b/signals/FS/CNY-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:CNY-USD +- source_id: band/owlet + id: FS:CNY-USD +- source_id: band/xenops + id: FS:CNY-USD diff --git a/signals/FS/CZK-USD.yaml b/signals/FS/CZK-USD.yaml new file mode 100644 index 0000000..246d31c --- /dev/null +++ b/signals/FS/CZK-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:CZK-USD +- source_id: band/owlet + id: FS:CZK-USD +- source_id: band/xenops + id: FS:CZK-USD diff --git a/signals/FS/EUR-USD.yaml b/signals/FS/EUR-USD.yaml new file mode 100644 index 0000000..56ded04 --- /dev/null +++ b/signals/FS/EUR-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:EUR-USD +- source_id: band/owlet + id: FS:EUR-USD +- source_id: band/xenops + id: FS:EUR-USD diff --git a/signals/FS/GBP-USD.yaml b/signals/FS/GBP-USD.yaml new file mode 100644 index 0000000..362f1e9 --- /dev/null +++ b/signals/FS/GBP-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:GBP-USD +- source_id: band/owlet + id: FS:GBP-USD +- source_id: band/xenops + id: FS:GBP-USD diff --git a/signals/FS/HKD-USD.yaml b/signals/FS/HKD-USD.yaml new file mode 100644 index 0000000..65ba9a9 --- /dev/null +++ b/signals/FS/HKD-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:HKD-USD +- source_id: band/owlet + id: FS:HKD-USD +- source_id: band/xenops + id: FS:HKD-USD diff --git a/signals/FS/INR-USD.yaml b/signals/FS/INR-USD.yaml new file mode 100644 index 0000000..177067a --- /dev/null +++ b/signals/FS/INR-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:INR-USD +- source_id: band/owlet + id: FS:INR-USD +- source_id: band/xenops + id: FS:INR-USD diff --git a/signals/FS/JPY-USD.yaml b/signals/FS/JPY-USD.yaml new file mode 100644 index 0000000..1d6d9c6 --- /dev/null +++ b/signals/FS/JPY-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:JPY-USD +- source_id: band/owlet + id: FS:JPY-USD +- source_id: band/xenops + id: FS:JPY-USD diff --git a/signals/FS/KRW-USD.yaml b/signals/FS/KRW-USD.yaml new file mode 100644 index 0000000..97d7901 --- /dev/null +++ b/signals/FS/KRW-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:KRW-USD +- source_id: band/owlet + id: FS:KRW-USD +- source_id: band/xenops + id: FS:KRW-USD diff --git a/signals/FS/MYR-USD.yaml b/signals/FS/MYR-USD.yaml new file mode 100644 index 0000000..ee5184a --- /dev/null +++ b/signals/FS/MYR-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:MYR-USD +- source_id: band/owlet + id: FS:MYR-USD +- source_id: band/xenops + id: FS:MYR-USD diff --git a/signals/FS/NZD-USD.yaml b/signals/FS/NZD-USD.yaml new file mode 100644 index 0000000..03670ff --- /dev/null +++ b/signals/FS/NZD-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:NZD-USD +- source_id: band/owlet + id: FS:NZD-USD +- source_id: band/xenops + id: FS:NZD-USD diff --git a/signals/FS/PHP-USD.yaml b/signals/FS/PHP-USD.yaml new file mode 100644 index 0000000..af1e33e --- /dev/null +++ b/signals/FS/PHP-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:PHP-USD +- source_id: band/owlet + id: FS:PHP-USD +- source_id: band/xenops + id: FS:PHP-USD diff --git a/signals/FS/PLN-USD.yaml b/signals/FS/PLN-USD.yaml new file mode 100644 index 0000000..0b13ef9 --- /dev/null +++ b/signals/FS/PLN-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:PLN-USD +- source_id: band/owlet + id: FS:PLN-USD +- source_id: band/xenops + id: FS:PLN-USD diff --git a/signals/FS/RUB-USD.yaml b/signals/FS/RUB-USD.yaml new file mode 100644 index 0000000..a78d8c2 --- /dev/null +++ b/signals/FS/RUB-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:RUB-USD +- source_id: band/owlet + id: FS:RUB-USD +- source_id: band/xenops + id: FS:RUB-USD diff --git a/signals/FS/SEK-USD.yaml b/signals/FS/SEK-USD.yaml new file mode 100644 index 0000000..fb51eef --- /dev/null +++ b/signals/FS/SEK-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:SEK-USD +- source_id: band/owlet + id: FS:SEK-USD +- source_id: band/xenops + id: FS:SEK-USD diff --git a/signals/FS/SGD-USD.yaml b/signals/FS/SGD-USD.yaml new file mode 100644 index 0000000..7711b07 --- /dev/null +++ b/signals/FS/SGD-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:SGD-USD +- source_id: band/owlet + id: FS:SGD-USD +- source_id: band/xenops + id: FS:SGD-USD diff --git a/signals/FS/THB-USD.yaml b/signals/FS/THB-USD.yaml new file mode 100644 index 0000000..6a76c43 --- /dev/null +++ b/signals/FS/THB-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:THB-USD +- source_id: band/owlet + id: FS:THB-USD +- source_id: band/xenops + id: FS:THB-USD diff --git a/signals/FS/TRY-USD.yaml b/signals/FS/TRY-USD.yaml new file mode 100644 index 0000000..fea74f2 --- /dev/null +++ b/signals/FS/TRY-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:TRY-USD +- source_id: band/owlet + id: FS:TRY-USD +- source_id: band/xenops + id: FS:TRY-USD diff --git a/signals/FS/TWD-USD.yaml b/signals/FS/TWD-USD.yaml new file mode 100644 index 0000000..ac17222 --- /dev/null +++ b/signals/FS/TWD-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:TWD-USD +- source_id: band/owlet + id: FS:TWD-USD +- source_id: band/xenops + id: FS:TWD-USD diff --git a/signals/FS/XAU-USD.yaml b/signals/FS/XAU-USD.yaml new file mode 100644 index 0000000..376a869 --- /dev/null +++ b/signals/FS/XAU-USD.yaml @@ -0,0 +1,7 @@ +sources: +- source_id: band/fieldfare + id: FS:XAU-USD +- source_id: band/owlet + id: FS:XAU-USD +- source_id: band/xenops + id: FS:XAU-USD From cc94a85b275e694e5dc7b253c63a2aef5e3ad8d3 Mon Sep 17 00:00:00 2001 From: Tanut Lertwarachai Date: Wed, 1 Apr 2026 11:54:22 +0700 Subject: [PATCH 2/2] fix version --- .github/workflows/aggregate_signals.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/aggregate_signals.yml b/.github/workflows/aggregate_signals.yml index a529ecf..8cf7fce 100644 --- a/.github/workflows/aggregate_signals.yml +++ b/.github/workflows/aggregate_signals.yml @@ -35,7 +35,7 @@ jobs: - name: Setup Rust Toolchain uses: actions-rust-lang/setup-rust-toolchain@v1 with: - toolchain: 1.82.0 + toolchain: 1.85.0 - name: Install Rust Script run: cargo install rust-script