1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
// use polars::prelude::*;
// use std::fs::File;
// use std::io::*;
// pub mod helper;
// use rsi::RelativeStrengthIndex;
// fn main() {
// println!("Hello, world!");
// // open csv file and print the dataframe
// let csv_path: &str = "eurusd.csv";
// let df: DataFrame = csv_to_dataframe(
// csv_path
// );
// // use the rsi function
// let rsi: RelativeStrengthIndex = RelativeStrengthIndex::new(
// df,
// 14
// );
// // turn the rsi lazyframe into a dataframe and print
// let rsi_df: DataFrame = rsi.lazyframe.collect().unwrap();
// println!(
// "RSI DataFrame:\n{:?}",
// rsi_df
// );
// // write the rsi dataframe to a csv file
// write_dataframe_to_csv_polars(
// &mut rsi_df.clone()
// );
// }
// pub fn csv_to_dataframe(
// csv_path: &str
// ) -> DataFrame {
// // Read a CSV file into a DataFrame
// let file: File = File::open(
// csv_path
// ).expect(
// "Could not open file"
// );
// let reader: BufReader<File> = BufReader::new(file);
// CsvReader::new(reader)
// .infer_schema(None)
// .has_header(true)
// .finish()
// .unwrap()
// }
// pub fn write_dataframe_to_csv_polars(
// dataframe: &mut DataFrame
// ) {
// // Write a DataFrame to a CSV file
// let file: File = File::create(
// "output.csv"
// ).expect(
// "Could not create file"
// );
// let writer: BufWriter<File> = BufWriter::new(file);
// CsvWriter::new(writer)
// .finish(dataframe)
// .unwrap();
// }