Spaces:
Sleeping
Sleeping
new file
Browse files- app.py +268 -0
- gold.csv +821 -0
- model.pkl +3 -0
- requirements.txt +7 -0
- scaler.pkl +3 -0
- templates/data_analysis.html +208 -0
- templates/error.html +61 -0
- templates/index.html +258 -0
app.py
ADDED
@@ -0,0 +1,268 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
from flask import Flask, render_template, request, jsonify
|
2 |
+
import pandas as pd
|
3 |
+
import numpy as np
|
4 |
+
import pickle
|
5 |
+
import os
|
6 |
+
from datetime import datetime, timedelta
|
7 |
+
import matplotlib
|
8 |
+
matplotlib.use('Agg') # Use non-interactive backend
|
9 |
+
import matplotlib.pyplot as plt
|
10 |
+
import seaborn as sns
|
11 |
+
import base64
|
12 |
+
import io
|
13 |
+
|
14 |
+
app = Flask(__name__)
|
15 |
+
|
16 |
+
# Load model and scaler
|
17 |
+
def load_model_and_scaler():
|
18 |
+
try:
|
19 |
+
with open('model.pkl', 'rb') as model_file:
|
20 |
+
model = pickle.load(model_file)
|
21 |
+
|
22 |
+
with open('scaler.pkl', 'rb') as scaler_file:
|
23 |
+
scaler = pickle.load(scaler_file)
|
24 |
+
|
25 |
+
return model, scaler
|
26 |
+
except FileNotFoundError:
|
27 |
+
return None, None
|
28 |
+
|
29 |
+
def load_data():
|
30 |
+
"""Load and preprocess the gold data"""
|
31 |
+
try:
|
32 |
+
data = pd.read_csv('gold.csv')
|
33 |
+
data['date'] = pd.to_datetime(data['date'], format='%d/%m/%Y').dt.strftime('%Y-%m-%d')
|
34 |
+
temp_df = data[['date', 'close', 'open']]
|
35 |
+
|
36 |
+
# Preprocessing
|
37 |
+
df = temp_df.copy()
|
38 |
+
df['date'] = pd.to_datetime(df['date'], dayfirst=True, format='%Y-%m-%d').dt.date
|
39 |
+
df.set_index('date', inplace=True)
|
40 |
+
df.index = pd.to_datetime(df.index)
|
41 |
+
df = df.sort_index()
|
42 |
+
|
43 |
+
return df
|
44 |
+
except FileNotFoundError:
|
45 |
+
return None
|
46 |
+
|
47 |
+
def normalize_data(df, scaler):
|
48 |
+
"""Normalize the data using the provided scaler"""
|
49 |
+
np_data_unscaled = np.array(df)
|
50 |
+
np_data_scaled = scaler.transform(np_data_unscaled)
|
51 |
+
normalized_df = pd.DataFrame(np_data_scaled, columns=df.columns, index=df.index)
|
52 |
+
return normalized_df
|
53 |
+
|
54 |
+
def sliding_window(data, lag):
|
55 |
+
"""Create sliding window features"""
|
56 |
+
series_close = data['close']
|
57 |
+
series_open = data['open']
|
58 |
+
result = pd.DataFrame()
|
59 |
+
|
60 |
+
# Add lag columns for 'close'
|
61 |
+
for l in lag:
|
62 |
+
result[f'close-{l}'] = series_close.shift(l)
|
63 |
+
|
64 |
+
# Add lag columns for 'open'
|
65 |
+
for l in lag:
|
66 |
+
result[f'open-{l}'] = series_open.shift(l)
|
67 |
+
|
68 |
+
# Add original 'close' and 'open' columns
|
69 |
+
result['close'] = series_close[max(lag):]
|
70 |
+
result['open'] = series_open[max(lag):]
|
71 |
+
|
72 |
+
# Remove missing values (NaN)
|
73 |
+
result = result.dropna()
|
74 |
+
|
75 |
+
# Set index according to lag values
|
76 |
+
result.index = series_close.index[max(lag):]
|
77 |
+
|
78 |
+
return result
|
79 |
+
|
80 |
+
def predict_next_7_days(model, scaler, data):
|
81 |
+
"""Predict gold prices for the next 7 days"""
|
82 |
+
# Normalize data
|
83 |
+
normalized_df = normalize_data(data, scaler)
|
84 |
+
|
85 |
+
# Create sliding window
|
86 |
+
windowed_data = sliding_window(normalized_df, [1, 2, 3, 4, 5, 6, 7])
|
87 |
+
windowed_data = windowed_data[['close', 'close-1', 'close-2', 'close-3', 'close-4', 'close-5', 'close-6', 'close-7',
|
88 |
+
'open', 'open-1', 'open-2', 'open-3', 'open-4', 'open-5', 'open-6', 'open-7']]
|
89 |
+
|
90 |
+
# Initialize predictions list
|
91 |
+
predictions = []
|
92 |
+
|
93 |
+
# Get last row as initial input
|
94 |
+
last_row = windowed_data.drop(columns=['close', 'open']).iloc[-1].values.reshape(1, -1)
|
95 |
+
|
96 |
+
# Iterate for 7 days
|
97 |
+
for _ in range(7):
|
98 |
+
# Predict value for next day
|
99 |
+
predicted_value_normalized = model.predict(last_row)
|
100 |
+
predicted_value = scaler.inverse_transform(predicted_value_normalized.reshape(-1, 2))
|
101 |
+
|
102 |
+
# Save prediction
|
103 |
+
predictions.append(predicted_value[0])
|
104 |
+
|
105 |
+
# Update input for next iteration
|
106 |
+
new_row_normalized = np.hstack([last_row[0, 2:], predicted_value_normalized[0]])
|
107 |
+
last_row = new_row_normalized.reshape(1, -1)
|
108 |
+
|
109 |
+
# Transform predictions to DataFrame
|
110 |
+
predictions_df = pd.DataFrame(
|
111 |
+
predictions,
|
112 |
+
columns=['close', 'open'],
|
113 |
+
index=pd.date_range(start=normalized_df.index[-1] + pd.Timedelta(days=1), periods=7)
|
114 |
+
)
|
115 |
+
|
116 |
+
# Get last price
|
117 |
+
last_price = scaler.inverse_transform(normalized_df[['close', 'open']].iloc[-1].values.reshape(-1, 2))
|
118 |
+
|
119 |
+
# Calculate daily percentage changes
|
120 |
+
predictions_df['close_change'] = predictions_df['close'].pct_change().fillna(0) * 100
|
121 |
+
predictions_df['open_change'] = predictions_df['open'].pct_change().fillna(0) * 100
|
122 |
+
|
123 |
+
# Calculate total change from today to day 7
|
124 |
+
total_close_change = ((predictions_df['close'].iloc[-1] - last_price[0][0]) / last_price[0][0]) * 100
|
125 |
+
total_open_change = ((predictions_df['open'].iloc[-1] - last_price[0][1]) / last_price[0][1]) * 100
|
126 |
+
|
127 |
+
return predictions_df, last_price[0], total_close_change, total_open_change
|
128 |
+
|
129 |
+
def create_prediction_chart(data, predictions_df, last_price):
|
130 |
+
"""Create a chart showing historical and predicted prices"""
|
131 |
+
plt.style.use('default')
|
132 |
+
fig, ax = plt.subplots(figsize=(12, 8))
|
133 |
+
|
134 |
+
# Plot last 30 days of historical data
|
135 |
+
recent_data = data.tail(30)
|
136 |
+
ax.plot(recent_data.index, recent_data['close'], 'b-', label='Historical Close Price', linewidth=2)
|
137 |
+
ax.plot(recent_data.index, recent_data['open'], 'g-', label='Historical Open Price', linewidth=2)
|
138 |
+
|
139 |
+
# Add current day point
|
140 |
+
ax.plot(recent_data.index[-1], last_price[0], 'ro', markersize=8, label='Current Close Price')
|
141 |
+
ax.plot(recent_data.index[-1], last_price[1], 'go', markersize=8, label='Current Open Price')
|
142 |
+
|
143 |
+
# Plot predictions
|
144 |
+
ax.plot(predictions_df.index, predictions_df['close'], 'r--', label='Predicted Close Price', linewidth=2, marker='o')
|
145 |
+
ax.plot(predictions_df.index, predictions_df['open'], 'orange', linestyle='--', label='Predicted Open Price', linewidth=2, marker='s')
|
146 |
+
|
147 |
+
ax.set_title('Gold Price Prediction - Next 7 Days', fontsize=16, fontweight='bold')
|
148 |
+
ax.set_xlabel('Date', fontsize=12)
|
149 |
+
ax.set_ylabel('Price (IDR)', fontsize=12)
|
150 |
+
ax.legend()
|
151 |
+
ax.grid(True, alpha=0.3)
|
152 |
+
|
153 |
+
# Format y-axis to show prices in millions
|
154 |
+
ax.yaxis.set_major_formatter(plt.FuncFormatter(lambda x, p: f'{x/1000000:.1f}M'))
|
155 |
+
|
156 |
+
plt.xticks(rotation=45)
|
157 |
+
plt.tight_layout()
|
158 |
+
|
159 |
+
# Convert plot to base64 string
|
160 |
+
img_buffer = io.BytesIO()
|
161 |
+
plt.savefig(img_buffer, format='png', dpi=150, bbox_inches='tight')
|
162 |
+
img_buffer.seek(0)
|
163 |
+
img_string = base64.b64encode(img_buffer.read()).decode()
|
164 |
+
plt.close()
|
165 |
+
|
166 |
+
return img_string
|
167 |
+
|
168 |
+
@app.route('/')
|
169 |
+
def index():
|
170 |
+
return render_template('index.html')
|
171 |
+
|
172 |
+
@app.route('/predict', methods=['POST'])
|
173 |
+
def predict():
|
174 |
+
try:
|
175 |
+
# Load model and scaler
|
176 |
+
model, scaler = load_model_and_scaler()
|
177 |
+
if model is None or scaler is None:
|
178 |
+
return jsonify({'error': 'Model or scaler not found. Please train the model first.'}), 500
|
179 |
+
|
180 |
+
# Load data
|
181 |
+
data = load_data()
|
182 |
+
if data is None:
|
183 |
+
return jsonify({'error': 'Data file not found.'}), 500
|
184 |
+
|
185 |
+
# Make predictions
|
186 |
+
predictions_df, last_price, total_close_change, total_open_change = predict_next_7_days(model, scaler, data)
|
187 |
+
|
188 |
+
# Create chart
|
189 |
+
chart_img = create_prediction_chart(data, predictions_df, last_price)
|
190 |
+
|
191 |
+
# Prepare response data
|
192 |
+
predictions_list = []
|
193 |
+
for date, row in predictions_df.iterrows():
|
194 |
+
predictions_list.append({
|
195 |
+
'date': date.strftime('%Y-%m-%d'),
|
196 |
+
'close_price': round(row['close'], 2),
|
197 |
+
'open_price': round(row['open'], 2),
|
198 |
+
'close_change': round(row['close_change'], 2),
|
199 |
+
'open_change': round(row['open_change'], 2)
|
200 |
+
})
|
201 |
+
|
202 |
+
response = {
|
203 |
+
'success': True,
|
204 |
+
'current_prices': {
|
205 |
+
'close': round(last_price[0], 2),
|
206 |
+
'open': round(last_price[1], 2)
|
207 |
+
},
|
208 |
+
'predictions': predictions_list,
|
209 |
+
'total_changes': {
|
210 |
+
'close': round(total_close_change, 2),
|
211 |
+
'open': round(total_open_change, 2)
|
212 |
+
},
|
213 |
+
'chart': chart_img
|
214 |
+
}
|
215 |
+
|
216 |
+
return jsonify(response)
|
217 |
+
|
218 |
+
except Exception as e:
|
219 |
+
return jsonify({'error': f'An error occurred: {str(e)}'}), 500
|
220 |
+
|
221 |
+
@app.route('/data-analysis')
|
222 |
+
def data_analysis():
|
223 |
+
"""Show data analysis page"""
|
224 |
+
try:
|
225 |
+
data = load_data()
|
226 |
+
if data is None:
|
227 |
+
return render_template('error.html', error='Data file not found.')
|
228 |
+
|
229 |
+
# Create historical price chart
|
230 |
+
fig, ax = plt.subplots(figsize=(12, 6))
|
231 |
+
ax.plot(data.index, data['close'], 'b-', label='Close Price', linewidth=1.5)
|
232 |
+
ax.plot(data.index, data['open'], 'g-', label='Open Price', linewidth=1.5)
|
233 |
+
ax.set_title('Historical Gold Prices', fontsize=16, fontweight='bold')
|
234 |
+
ax.set_xlabel('Date', fontsize=12)
|
235 |
+
ax.set_ylabel('Price (IDR)', fontsize=12)
|
236 |
+
ax.legend()
|
237 |
+
ax.grid(True, alpha=0.3)
|
238 |
+
ax.yaxis.set_major_formatter(plt.FuncFormatter(lambda x, p: f'{x/1000000:.1f}M'))
|
239 |
+
plt.xticks(rotation=45)
|
240 |
+
plt.tight_layout()
|
241 |
+
|
242 |
+
img_buffer = io.BytesIO()
|
243 |
+
plt.savefig(img_buffer, format='png', dpi=150, bbox_inches='tight')
|
244 |
+
img_buffer.seek(0)
|
245 |
+
historical_chart = base64.b64encode(img_buffer.read()).decode()
|
246 |
+
plt.close()
|
247 |
+
|
248 |
+
# Calculate statistics
|
249 |
+
stats = {
|
250 |
+
'total_records': len(data),
|
251 |
+
'date_range': f"{data.index.min().strftime('%Y-%m-%d')} to {data.index.max().strftime('%Y-%m-%d')}",
|
252 |
+
'avg_close': round(data['close'].mean(), 2),
|
253 |
+
'avg_open': round(data['open'].mean(), 2),
|
254 |
+
'min_close': round(data['close'].min(), 2),
|
255 |
+
'max_close': round(data['close'].max(), 2),
|
256 |
+
'current_close': round(data['close'].iloc[-1], 2),
|
257 |
+
'current_open': round(data['open'].iloc[-1], 2)
|
258 |
+
}
|
259 |
+
|
260 |
+
return render_template('data_analysis.html', chart=historical_chart, stats=stats)
|
261 |
+
|
262 |
+
except Exception as e:
|
263 |
+
return render_template('error.html', error=f'An error occurred: {str(e)}')
|
264 |
+
|
265 |
+
if __name__ == '__main__':
|
266 |
+
# For Hugging Face Spaces, use port 7860
|
267 |
+
port = int(os.environ.get('PORT', 7860))
|
268 |
+
app.run(host='0.0.0.0', port=port, debug=False)
|
gold.csv
ADDED
@@ -0,0 +1,821 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
date,close,open,Tertinggi,Terendah,Volume,Perubahan
|
2 |
+
12/3/2025,2932,2922,2935,2912,"112,85K","0,39%"
|
3 |
+
11/3/2025,2921,2893,2929,2883,"2,96K","0,74%"
|
4 |
+
10/3/2025,2899,2920,2926,2885,"221,61K","-0,5%"
|
5 |
+
7/3/2025,2914,2919,2939,2905,"237,58K","-0,43%"
|
6 |
+
6/3/2025,2927,2930,2936,2898,"166,36K","0,02%"
|
7 |
+
5/3/2025,2926,2929,2941,2903,"183,02K","0,18%"
|
8 |
+
4/3/2025,2921,2904,2940,2893,"188,52K","0,67%"
|
9 |
+
3/3/2025,2901,2872,2906,2866,"177,02K","1,85%"
|
10 |
+
28/02/2025,2849,2889,2896,2844,"210,56K","-1,64%"
|
11 |
+
27/02/2025,2896,2931,2936,2879,"207,65K","-0,75%"
|
12 |
+
26/02/2025,2918,2916,2926,2891,"2,05K","0,41%"
|
13 |
+
25/02/2025,2906,2956,2956,2885,"5,59K","-1,48%"
|
14 |
+
24/02/2025,2950,2939,2960,2926,"2,00K","-0,12%"
|
15 |
+
21/02/2025,2953,2956,2965,2930,"163,69K","-0,1%"
|
16 |
+
20/02/2025,2956,2950,2973,2939,"172,20K","0,68%"
|
17 |
+
19/02/2025,2936,2954,2964,2934,"159,34K","-0,44%"
|
18 |
+
18/02/2025,2949,2895,2957,2888,"218,76K","1,67%"
|
19 |
+
14/02/2025,2901,2957,2964,2890,"228,08K","-1,52%"
|
20 |
+
13/02/2025,2945,2929,2959,2926,"169,50K","0,57%"
|
21 |
+
12/2/2025,2929,2927,2937,2887,"204,63K","-0,13%"
|
22 |
+
11/2/2025,2933,2937,2969,2907,"218,48K","-0,06%"
|
23 |
+
10/2/2025,2934,2885,2938,2880,"167,23K","1,62%"
|
24 |
+
7/2/2025,2888,2880,2911,2876,"192,55K","0,38%"
|
25 |
+
6/2/2025,2877,2885,2894,2855,"167,70K","-0,56%"
|
26 |
+
5/2/2025,2893,2874,2906,2870,"167,38K","0,6%"
|
27 |
+
4/2/2025,2876,2850,2877,2837,"145,86K","0,65%"
|
28 |
+
3/2/2025,2857,2847,2872,2802,"181,34K","0,78%"
|
29 |
+
31/01/2025,2835,2852,2863,2826,"165,68K","-0,36%"
|
30 |
+
30/01/2025,2845,2796,2853,2795,"188,34K","2,29%"
|
31 |
+
29/01/2025,2782,2785,2790,2773,"3,98K","0,02%"
|
32 |
+
28/01/2025,2781,2757,2787,2753,"3,42K","1,04%"
|
33 |
+
27/01/2025,2752,2791,2791,2747,"3,94K","-1,44%"
|
34 |
+
24/01/2025,2793,2779,2808,2779,"1,10K","0,52%"
|
35 |
+
23/01/2025,2778,2778,2780,2755,"1,83K","-0,68%"
|
36 |
+
22/01/2025,2797,2785,2800,2783,"39,59K","0,42%"
|
37 |
+
21/01/2025,2786,2766,2788,2742,"56,80K","1,34%"
|
38 |
+
17/01/2025,2749,2747,2759,2729,"156,87K","-0,08%"
|
39 |
+
16/01/2025,2751,2722,2758,2720,"186,54K","1,22%"
|
40 |
+
15/01/2025,2718,2693,2723,2685,"193,72K","1,32%"
|
41 |
+
14/01/2025,2682,2682,2694,2672,"179,41K","0,14%"
|
42 |
+
13/01/2025,2679,2717,2724,2675,"211,09K","-1,34%"
|
43 |
+
10/1/2025,2715,2693,2735,2687,"298,41K","0,9%"
|
44 |
+
9/1/2025,2691,2680,2697,2674,"156,65K","0,69%"
|
45 |
+
8/1/2025,2672,2663,2687,2658,"197,37K","0,26%"
|
46 |
+
7/1/2025,2665,2647,2679,2644,"161,62K","0,68%"
|
47 |
+
6/1/2025,2647,2653,2664,2625,"169,92K","-0,27%"
|
48 |
+
3/1/2025,2655,2671,2681,2650,"121,17K","-0,54%"
|
49 |
+
2/1/2025,2669,2641,2674,2636,"144,52K","1,06%"
|
50 |
+
31/12/2024,2641,2620,2642,2614,"86,29K","0,87%"
|
51 |
+
30/12/2024,2618,2636,2641,2608,"110,92K","-0,01%"
|
52 |
+
27/12/2024,2618,2640,2640,2612,"0,64K","-0,83%"
|
53 |
+
26/12/2024,2640,2623,2642,2623,"1,40K","0,67%"
|
54 |
+
24/12/2024,2623,2617,2623,2613,"0,42K","0,28%"
|
55 |
+
23/12/2024,2616,2627,2633,2610,"0,56K","-0,65%"
|
56 |
+
20/12/2024,2633,2598,2641,2596,"0,51K","1,41%"
|
57 |
+
19/12/2024,2596,2586,2625,2586,"0,90K","-1,7%"
|
58 |
+
18/12/2024,2641,2651,2654,2587,"0,88K","-0,33%"
|
59 |
+
17/12/2024,2650,2657,2663,2634,"0,63K","-0,28%"
|
60 |
+
16/12/2024,2657,2655,2670,2648,"1,41K","-0,2%"
|
61 |
+
13/12/2024,2662,2690,2702,2651,"1,07K","-1,21%"
|
62 |
+
12/12/2024,2695,2738,2744,2683,"1,69K","-1,69%"
|
63 |
+
11/12/2024,2742,2709,2744,2700,"3,82K","1,33%"
|
64 |
+
10/12/2024,2706,2670,2709,2670,"1,41K","1,21%"
|
65 |
+
9/12/2024,2673,2655,2687,2638,"0,96K","0,99%"
|
66 |
+
6/12/2024,2647,2642,2655,2630,"0,80K","0,42%"
|
67 |
+
5/12/2024,2636,2662,2667,2635,"1,67K","-1,06%"
|
68 |
+
4/12/2024,2664,2651,2670,2644,"0,85K","0,32%"
|
69 |
+
3/12/2024,2656,2652,2665,2645,"0,61K","0,36%"
|
70 |
+
2/12/2024,2647,2664,2664,2634,"0,97K","-0,84%"
|
71 |
+
29/11/2024,2669,2650,2678,2632,"1,35K","0,63%"
|
72 |
+
27/11/2024,2652,2646,2671,2641,"2,27K","1,18%"
|
73 |
+
26/11/2024,2621,2626,2643,2605,"177,86K","0,11%"
|
74 |
+
25/11/2024,2619,2717,2723,2617,"305,34K","-3,45%"
|
75 |
+
22/11/2024,2712,2672,2719,2670,"220,55K","1,39%"
|
76 |
+
21/11/2024,2675,2654,2677,2652,"186,30K","0,87%"
|
77 |
+
20/11/2024,2652,2636,2659,2622,"182,01K","0,79%"
|
78 |
+
19/11/2024,2631,2616,2643,2614,"202,24K","0,63%"
|
79 |
+
18/11/2024,2615,2572,2620,2569,"195,29K","1,73%"
|
80 |
+
15/11/2024,2570,2570,2581,2559,"179,89K","-0,11%"
|
81 |
+
14/11/2024,2573,2578,2586,2542,"266,16K","-0,53%"
|
82 |
+
13/11/2024,2587,2605,2625,2578,"262,75K","-0,76%"
|
83 |
+
12/11/2024,2606,2626,2633,2596,"282,77K","-0,44%"
|
84 |
+
11/11/2024,2618,2692,2693,2617,"281,92K","-2,86%"
|
85 |
+
8/11/2024,2695,2714,2718,2687,"233,11K","-0,41%"
|
86 |
+
7/11/2024,2706,2668,2718,2650,"292,92K","1,1%"
|
87 |
+
6/11/2024,2676,2753,2759,2661,"361,31K","-2,67%"
|
88 |
+
5/11/2024,2750,2746,2760,2733,"151,43K","0,13%"
|
89 |
+
4/11/2024,2746,2744,2758,2739,"145,25K","-0,11%"
|
90 |
+
1/11/2024,2749,2754,2772,2743,"180,66K",0.00%
|
91 |
+
31/10/2024,2749,2799,2801,2742,"242,57K","-1,84%"
|
92 |
+
30/10/2024,2801,2787,2802,2782,"191,55K","1,16%"
|
93 |
+
29/10/2024,2769,2742,2773,2742,"0,85K","0,92%"
|
94 |
+
28/10/2024,2744,2739,2746,2726,"0,57K","0,05%"
|
95 |
+
25/10/2024,2742,2735,2747,2717,"0,26K","0,21%"
|
96 |
+
24/10/2024,2737,2717,2743,2717,"0,34K","0,71%"
|
97 |
+
23/10/2024,2717,2749,2759,2710,"0,65K","-1,1%"
|
98 |
+
22/10/2024,2747,2723,2750,2722,"0,43K","0,76%"
|
99 |
+
21/10/2024,2727,2724,2743,2717,"0,41K","0,32%"
|
100 |
+
18/10/2024,2718,2696,2726,2696,"0,22K","0,83%"
|
101 |
+
17/10/2024,2696,2677,2701,2677,"0,27K","0,6%"
|
102 |
+
16/10/2024,2679,2667,2690,2666,"0,38K","0,46%"
|
103 |
+
15/10/2024,2667,2655,2674,2643,"0,24K","0,5%"
|
104 |
+
14/10/2024,2654,2660,2671,2648,"0,39K","-0,4%"
|
105 |
+
11/10/2024,2664,2634,2667,2634,"0,31K","1,41%"
|
106 |
+
10/10/2024,2627,2615,2637,2609,"0,88K","0,51%"
|
107 |
+
9/10/2024,2614,2629,2631,2612,"0,77K","-0,36%"
|
108 |
+
8/10/2024,2624,2650,2660,2613,"1,05K","-1,15%"
|
109 |
+
7/10/2024,2654,2659,2667,2646,"0,39K","-0,08%"
|
110 |
+
4/10/2024,2656,2663,2678,2642,"0,85K","-0,43%"
|
111 |
+
3/10/2024,2667,2668,2671,2647,"0,65K","0,35%"
|
112 |
+
2/10/2024,2658,2671,2672,2653,"0,34K","-0,76%"
|
113 |
+
1/10/2024,2679,2644,2682,2644,"0,46K","1,16%"
|
114 |
+
30/09/2024,2648,2668,2675,2637,"0,55K","-0,32%"
|
115 |
+
27/09/2024,2657,2682,2684,2655,"0,64K","-0,52%"
|
116 |
+
26/09/2024,2670,2657,2684,2653,"17,22K","0,36%"
|
117 |
+
25/09/2024,2661,2659,2671,2650,"21,76K","0,29%"
|
118 |
+
24/09/2024,2653,2629,2665,2624,"13,09K","0,93%"
|
119 |
+
23/09/2024,2629,2623,2636,2615,"8,70K","0,24%"
|
120 |
+
20/09/2024,2622,2588,2627,2585,"9,30K","1,22%"
|
121 |
+
19/09/2024,2591,2562,2597,2552,"8,60K","0,62%"
|
122 |
+
18/09/2024,2575,2573,2604,2549,"10,66K","0,23%"
|
123 |
+
17/09/2024,2569,2586,2590,2564,"6,95K","-0,63%"
|
124 |
+
16/09/2024,2585,2585,2593,2579,"4,57K","-0,06%"
|
125 |
+
13/09/2024,2587,2565,2591,2562,"10,05K","1,16%"
|
126 |
+
12/9/2024,2557,2518,2565,2516,"9,29K","1,51%"
|
127 |
+
11/9/2024,2519,2522,2534,2506,"4,91K","-0,02%"
|
128 |
+
10/9/2024,2520,2512,2524,2506,"5,90K","0,41%"
|
129 |
+
9/9/2024,2509,2503,2513,2491,"4,64K","0,31%"
|
130 |
+
6/9/2024,2502,2524,2536,2491,"6,27K","-0,72%"
|
131 |
+
5/9/2024,2520,2502,2531,2501,"6,72K","0,68%"
|
132 |
+
4/9/2024,2503,2500,2508,2480,"5,94K","0,12%"
|
133 |
+
3/9/2024,2500,2509,2516,2482,"10,28K","-0,19%"
|
134 |
+
30/08/2024,2505,2531,2536,2504,"6,48K","-1,27%"
|
135 |
+
29/08/2024,2537,2517,2539,2514,"10,79K","1,36%"
|
136 |
+
28/08/2024,2503,2525,2526,2493,"2,35K","-0,6%"
|
137 |
+
27/08/2024,2518,2518,2525,2504,"0,65K","-0,1%"
|
138 |
+
26/08/2024,2520,2513,2528,2509,"0,66K","0,36%"
|
139 |
+
23/08/2024,2511,2486,2519,2486,"0,75K","1,17%"
|
140 |
+
22/08/2024,2482,2516,2516,2473,"0,74K","-1,22%"
|
141 |
+
21/08/2024,2513,2517,2522,2495,"0,60K","-0,13%"
|
142 |
+
20/08/2024,2516,2508,2535,2502,"0,66K","0,37%"
|
143 |
+
19/08/2024,2507,2513,2514,2489,"0,78K","0,13%"
|
144 |
+
16/08/2024,2504,2460,2514,2455,"0,59K","1,83%"
|
145 |
+
15/08/2024,2459,2452,2472,2437,"0,53K","0,51%"
|
146 |
+
14/08/2024,2446,2471,2485,2443,"0,56K","-1,12%"
|
147 |
+
13/08/2024,2474,2477,2483,2464,"0,37K","0,16%"
|
148 |
+
12/8/2024,2470,2436,2478,2430,"0,73K","1,23%"
|
149 |
+
9/8/2024,2440,2432,2442,2424,"0,70K","0,39%"
|
150 |
+
8/8/2024,2430,2390,2434,2388,"0,58K","1,26%"
|
151 |
+
7/8/2024,2400,2399,2414,2387,"0,46K","0,05%"
|
152 |
+
6/8/2024,2399,2421,2431,2390,"0,50K","-0,53%"
|
153 |
+
5/8/2024,2412,2459,2466,2374,"1,13K",-1.00%
|
154 |
+
2/8/2024,2436,2456,2488,2421,"2,46K","-0,4%"
|
155 |
+
1/8/2024,2446,2459,2471,2439,"1,15K","0,3%"
|
156 |
+
31/07/2024,2439,2421,2461,2415,"1,32K","0,86%"
|
157 |
+
30/07/2024,2418,2393,2422,2389,"3,57K","1,67%"
|
158 |
+
29/07/2024,2378,2387,2402,2367,"126,41K","-0,13%"
|
159 |
+
26/07/2024,2381,2364,2390,2355,"154,52K","1,17%"
|
160 |
+
25/07/2024,2354,2398,2401,2352,"294,90K","-2,57%"
|
161 |
+
24/07/2024,2416,2411,2433,2397,"245,88K","0,35%"
|
162 |
+
23/07/2024,2407,2398,2414,2389,"171,19K","0,53%"
|
163 |
+
22/07/2024,2395,2404,2414,2385,"197,56K","-0,18%"
|
164 |
+
19/07/2024,2399,2448,2448,2396,"254,41K","-2,33%"
|
165 |
+
18/07/2024,2456,2463,2479,2443,"192,77K","-0,14%"
|
166 |
+
17/07/2024,2460,2473,2488,2456,"259,54K","-0,32%"
|
167 |
+
16/07/2024,2468,2427,2475,2425,"246,09K","1,6%"
|
168 |
+
15/07/2024,2429,2419,2445,2406,"193,54K","0,34%"
|
169 |
+
12/7/2024,2421,2421,2423,2396,"220,93K","-0,05%"
|
170 |
+
11/7/2024,2422,2377,2430,2377,"303,52K","1,77%"
|
171 |
+
10/7/2024,2380,2371,2393,2370,"163,90K","0,5%"
|
172 |
+
9/7/2024,2368,2367,2378,2356,"252,49K","0,19%"
|
173 |
+
8/7/2024,2364,2396,2399,2358,"240,78K","-1,43%"
|
174 |
+
5/7/2024,2398,2366,2402,2356,"293,25K","1,4%"
|
175 |
+
4/7/2024,2365,2367,2371,2359,,"-0,2%"
|
176 |
+
3/7/2024,2369,2339,2375,2336,"193,64K","1,54%"
|
177 |
+
2/7/2024,2333,2342,2346,2327,"153,71K","-0,24%"
|
178 |
+
1/7/2024,2339,2336,2349,2328,"142,60K","-0,03%"
|
179 |
+
28/06/2024,2340,2339,2351,2330,"135,38K","0,13%"
|
180 |
+
27/06/2024,2337,2309,2342,2307,"140,23K","1,55%"
|
181 |
+
26/06/2024,2301,2319,2321,2293,"0,99K","-0,75%"
|
182 |
+
25/06/2024,2318,2334,2336,2315,"1,26K","-0,6%"
|
183 |
+
24/06/2024,2332,2322,2335,2318,"0,60K","0,57%"
|
184 |
+
21/06/2024,2319,2362,2370,2318,"0,60K","-1,61%"
|
185 |
+
20/06/2024,2357,2331,2367,2327,"0,83K","0,6%"
|
186 |
+
19/06/2024,2343,2343,2350,2339,,"0,35%"
|
187 |
+
18/06/2024,2335,2323,2335,2309,"0,39K","0,77%"
|
188 |
+
17/06/2024,2317,2336,2336,2312,"0,45K","-0,86%"
|
189 |
+
14/06/2024,2337,2306,2339,2306,"0,42K","1,35%"
|
190 |
+
13/06/2024,2306,2328,2330,2299,"0,65K","-1,57%"
|
191 |
+
12/6/2024,2343,2322,2345,2316,"0,60K","1,21%"
|
192 |
+
11/6/2024,2315,2316,2325,2303,"0,79K","-0,02%"
|
193 |
+
10/6/2024,2315,2300,2319,2293,"0,75K","0,08%"
|
194 |
+
7/6/2024,2313,2384,2394,2293,"1,30K","-2,76%"
|
195 |
+
6/6/2024,2379,2364,2385,2361,"0,88K","0,65%"
|
196 |
+
5/6/2024,2364,2336,2365,2335,"0,59K","1,19%"
|
197 |
+
4/6/2024,2336,2360,2361,2325,"1,40K","-0,92%"
|
198 |
+
3/6/2024,2358,2335,2364,2324,"0,77K","1,01%"
|
199 |
+
31/05/2024,2334,2352,2369,2330,"1,21K","-0,88%"
|
200 |
+
30/05/2024,2355,2358,2361,2332,"2,72K","0,58%"
|
201 |
+
29/05/2024,2341,2363,2364,2334,"119,32K","-0,65%"
|
202 |
+
28/05/2024,2357,2338,2366,2334,"316,22K",0.00%
|
203 |
+
27/05/2024,2357,2338,2366,2334,"105,47K","0,94%"
|
204 |
+
24/05/2024,2335,2330,2349,2326,"178,34K","-0,12%"
|
205 |
+
23/05/2024,2337,2383,2386,2328,"273,66K","-2,33%"
|
206 |
+
22/05/2024,2393,2425,2431,2378,"253,85K","-1,36%"
|
207 |
+
21/05/2024,2426,2432,2438,2409,"229,42K","-0,52%"
|
208 |
+
20/05/2024,2439,2422,2454,2411,"281,43K","0,87%"
|
209 |
+
17/05/2024,2417,2381,2427,2378,"218,55K","1,34%"
|
210 |
+
16/05/2024,2386,2392,2403,2375,"191,03K","-0,39%"
|
211 |
+
15/05/2024,2395,2363,2396,2357,"249,84K","1,48%"
|
212 |
+
14/05/2024,2360,2342,2365,2341,"192,08K","0,72%"
|
213 |
+
13/05/2024,2343,2369,2371,2338,"243,08K","-1,35%"
|
214 |
+
10/5/2024,2375,2354,2385,2352,"275,24K","1,48%"
|
215 |
+
9/5/2024,2340,2317,2354,2313,"249,09K","0,78%"
|
216 |
+
8/5/2024,2322,2322,2330,2311,"214,69K","-0,08%"
|
217 |
+
7/5/2024,2324,2335,2339,2318,"204,62K","-0,3%"
|
218 |
+
6/5/2024,2331,2313,2342,2301,"191,90K","0,98%"
|
219 |
+
3/5/2024,2309,2314,2331,2285,"231,40K","-0,04%"
|
220 |
+
2/5/2024,2310,2330,2336,2294,"193,66K","-0,06%"
|
221 |
+
1/5/2024,2311,2298,2340,2292,"227,38K","0,35%"
|
222 |
+
30/04/2024,2303,2347,2348,2296,"229,06K","-2,32%"
|
223 |
+
29/04/2024,2358,2348,2359,2331,"187,31K","0,97%"
|
224 |
+
26/04/2024,2335,2333,2351,2327,"0,72K","0,2%"
|
225 |
+
25/04/2024,2330,2318,2345,2306,"0,99K","0,18%"
|
226 |
+
24/04/2024,2326,2324,2338,2314,"0,78K","-0,17%"
|
227 |
+
23/04/2024,2330,2332,2336,2294,"0,79K","-0,2%"
|
228 |
+
22/04/2024,2335,2392,2392,2327,"1,03K","-2,78%"
|
229 |
+
19/04/2024,2401,2381,2418,2375,"1,61K","0,65%"
|
230 |
+
18/04/2024,2386,2366,2396,2366,"2,55K","0,4%"
|
231 |
+
17/04/2024,2376,2388,2400,2360,"0,58K","-0,81%"
|
232 |
+
16/04/2024,2396,2387,2402,2367,"1,27K","1,04%"
|
233 |
+
15/04/2024,2371,2357,2392,2330,"1,67K","0,38%"
|
234 |
+
12/4/2024,2362,2378,2437,2338,"2,20K","0,05%"
|
235 |
+
11/4/2024,2361,2341,2383,2332,"0,98K","1,04%"
|
236 |
+
10/4/2024,2337,2359,2366,2326,"1,62K","-0,6%"
|
237 |
+
9/4/2024,2351,2344,2373,2344,"1,56K","0,5%"
|
238 |
+
8/4/2024,2339,2332,2357,2311,"1,31K","0,23%"
|
239 |
+
5/4/2024,2334,2299,2338,2277,"0,91K","1,6%"
|
240 |
+
4/4/2024,2297,2309,2312,2288,"0,99K","-0,28%"
|
241 |
+
3/4/2024,2303,2290,2310,2275,"1,23K","1,45%"
|
242 |
+
2/4/2024,2270,2260,2290,2256,"1,70K","1,09%"
|
243 |
+
1/4/2024,2246,2244,2275,2239,"1,10K","0,84%"
|
244 |
+
28/03/2024,2227,2204,2244,2196,"1,62K","1,17%"
|
245 |
+
27/03/2024,2201,2189,2207,2183,"1,21K","1,11%"
|
246 |
+
26/03/2024,2177,2173,2201,2168,"202,37K","0,04%"
|
247 |
+
25/03/2024,2176,2167,2183,2164,"211,61K","0,76%"
|
248 |
+
22/03/2024,2160,2183,2188,2158,"205,81K","-1,13%"
|
249 |
+
21/03/2024,2185,2190,2225,2168,"391,75K","1,1%"
|
250 |
+
20/03/2024,2161,2161,2192,2152,"233,57K","0,06%"
|
251 |
+
19/03/2024,2160,2164,2166,2150,"178,16K","-0,21%"
|
252 |
+
18/03/2024,2164,2160,2167,2149,"211,86K","0,13%"
|
253 |
+
15/03/2024,2162,2166,2177,2159,"187,85K","-0,28%"
|
254 |
+
14/03/2024,2168,2180,2181,2157,"207,23K","-0,61%"
|
255 |
+
13/03/2024,2181,2164,2186,2161,"232,27K","0,68%"
|
256 |
+
12/3/2024,2166,2189,2191,2156,"316,25K","-1,03%"
|
257 |
+
11/3/2024,2189,2188,2196,2181,"242,42K","0,14%"
|
258 |
+
8/3/2024,2186,2167,2203,2161,"389,68K","0,94%"
|
259 |
+
7/3/2024,2165,2157,2172,2152,"267,80K","0,32%"
|
260 |
+
6/3/2024,2158,2136,2161,2132,"319,76K","0,76%"
|
261 |
+
5/3/2024,2142,2123,2151,2119,"283,15K","0,73%"
|
262 |
+
4/3/2024,2126,2092,2128,2088,"328,25K","1,46%"
|
263 |
+
1/3/2024,2096,2053,2097,2047,"330,59K",2.00%
|
264 |
+
29/02/2024,2055,2044,2059,2036,"227,07K","0,59%"
|
265 |
+
28/02/2024,2043,2040,2047,2033,"137,08K","0,41%"
|
266 |
+
27/02/2024,2034,2031,2038,2029,"0,96K","0,26%"
|
267 |
+
26/02/2024,2029,2034,2036,2025,"1,14K","-0,51%"
|
268 |
+
23/02/2024,2039,2024,2042,2016,"0,71K","0,92%"
|
269 |
+
22/02/2024,2021,2027,2035,2020,"1,66K","-0,18%"
|
270 |
+
21/02/2024,2025,2025,2033,2022,"1,09K","-0,27%"
|
271 |
+
20/02/2024,2030,2018,2032,2016,"1,11K","-0,48%"
|
272 |
+
19/02/2024,2040,2028,2043,2024,"202,43K","1,26%"
|
273 |
+
16/02/2024,2014,2007,2017,1997,"0,80K","0,45%"
|
274 |
+
15/02/2024,2005,1995,2010,1993,"1,07K","0,53%"
|
275 |
+
14/02/2024,1995,1995,1999,1987,"1,63K","-0,15%"
|
276 |
+
13/02/2024,1998,2024,2036,1993,"1,47K","-1,27%"
|
277 |
+
12/2/2024,2023,2031,2031,2016,"1,22K","-0,27%"
|
278 |
+
9/2/2024,2029,2039,2042,2025,"0,53K","-0,46%"
|
279 |
+
8/2/2024,2038,2041,2044,2025,"0,67K","-0,18%"
|
280 |
+
7/2/2024,2042,2042,2051,2037,"0,51K","0,01%"
|
281 |
+
6/2/2024,2042,2032,2045,2029,"0,63K","0,42%"
|
282 |
+
5/2/2024,2033,2048,2048,2021,"1,00K","-0,54%"
|
283 |
+
2/2/2024,2044,2062,2065,2035,"3,02K","-0,84%"
|
284 |
+
1/2/2024,2061,2048,2073,2037,"1,35K","0,18%"
|
285 |
+
31/01/2024,2057,2045,2064,2039,"1,43K","0,8%"
|
286 |
+
30/01/2024,2041,2042,2057,2038,"1,12K","0,78%"
|
287 |
+
29/01/2024,2025,2024,2037,2019,"150,71K","0,4%"
|
288 |
+
26/01/2024,2017,2021,2028,2016,"119,59K","-0,02%"
|
289 |
+
25/01/2024,2018,2015,2026,2004,"196,67K","0,09%"
|
290 |
+
24/01/2024,2016,2031,2038,2012,"234,46K","-0,48%"
|
291 |
+
23/01/2024,2026,2023,2039,2021,"156,70K","0,18%"
|
292 |
+
22/01/2024,2022,2032,2034,2017,"152,76K","-0,35%"
|
293 |
+
19/01/2024,2029,2027,2042,2022,"172,81K","0,38%"
|
294 |
+
18/01/2024,2022,2009,2026,2008,"171,93K","0,75%"
|
295 |
+
17/01/2024,2007,2032,2036,2005,"254,29K","-1,17%"
|
296 |
+
16/01/2024,2030,2053,2063,2028,"285,25K",0.00%
|
297 |
+
15/01/2024,2030,2053,2063,2028,"285,25K","-1,04%"
|
298 |
+
12/1/2024,2052,2033,2067,2033,"272,35K","1,6%"
|
299 |
+
11/1/2024,2019,2029,2056,2017,"301,34K","-0,42%"
|
300 |
+
10/1/2024,2028,2036,2046,2026,"205,01K","-0,26%"
|
301 |
+
9/1/2024,2033,2035,2049,2032,"218,75K","-0,02%"
|
302 |
+
8/1/2024,2034,2053,2053,2023,"220,99K","-0,8%"
|
303 |
+
5/1/2024,2050,2051,2071,2031,"214,68K","-0,01%"
|
304 |
+
4/1/2024,2050,2049,2058,2043,"130,26K","0,35%"
|
305 |
+
3/1/2024,2043,2068,2074,2038,"221,68K","-1,48%"
|
306 |
+
2/1/2024,2073,2073,2088,2064,"157,56K","0,08%"
|
307 |
+
29/12/2023,2072,2076,2084,2068,"105,72K","-0,56%"
|
308 |
+
28/12/2023,2084,2090,2098,2075,"129,54K",0.00%
|
309 |
+
27/12/2023,2083,2068,2085,2063,"0,59K","1,12%"
|
310 |
+
26/12/2023,2060,2056,2070,2056,"0,29K","0,04%"
|
311 |
+
22/12/2023,2060,2052,2072,2049,"0,44K","0,87%"
|
312 |
+
21/12/2023,2042,2035,2048,2034,"0,54K","0,18%"
|
313 |
+
20/12/2023,2038,2044,2046,2032,"0,26K","-0,22%"
|
314 |
+
19/12/2023,2043,2031,2050,2025,"0,47K","0,58%"
|
315 |
+
18/12/2023,2031,2024,2036,2021,"0,25K","0,24%"
|
316 |
+
15/12/2023,2026,2038,2050,2020,"0,63K","-0,45%"
|
317 |
+
14/12/2023,2035,2032,2053,2031,"0,56K","2,37%"
|
318 |
+
13/12/2023,1988,1986,2033,1979,"2,22K","0,21%"
|
319 |
+
12/12/2023,1984,1989,2003,1984,"0,57K","-0,02%"
|
320 |
+
11/12/2023,1984,2011,2013,1982,"0,55K","-1,03%"
|
321 |
+
8/12/2023,2005,2035,2040,2001,"1,37K","-1,57%"
|
322 |
+
7/12/2023,2037,2035,2047,2027,"0,53K","-0,07%"
|
323 |
+
6/12/2023,2038,2028,2043,2027,"0,68K","0,57%"
|
324 |
+
5/12/2023,2027,2039,2050,2020,"1,42K","-0,3%"
|
325 |
+
4/12/2023,2033,2083,2141,2030,"2,70K","-2,28%"
|
326 |
+
1/12/2023,2080,2049,2086,2043,"2,01K","1,6%"
|
327 |
+
30/11/2023,2048,2056,2058,2043,"1,15K","-0,48%"
|
328 |
+
29/11/2023,2058,2053,2062,2048,"1,91K","0,86%"
|
329 |
+
28/11/2023,2040,2014,2044,2012,"174,67K","1,37%"
|
330 |
+
27/11/2023,2012,2003,2019,2001,"251,25K","0,47%"
|
331 |
+
24/11/2023,2003,1991,2005,1991,"214,88K",0.00%
|
332 |
+
23/11/2023,2003,1991,2005,1991,"214,88K","0,51%"
|
333 |
+
22/11/2023,1993,2000,2008,1989,"199,37K","-0,44%"
|
334 |
+
21/11/2023,2002,1980,2010,1980,"230,02K","1,08%"
|
335 |
+
20/11/2023,1980,1981,1988,1967,"177,89K","-0,22%"
|
336 |
+
17/11/2023,1985,1984,1996,1981,"133,12K","-0,13%"
|
337 |
+
16/11/2023,1987,1963,1991,1959,"186,81K","1,17%"
|
338 |
+
15/11/2023,1964,1967,1979,1959,"142,92K","-0,11%"
|
339 |
+
14/11/2023,1967,1950,1975,1939,"180,74K","0,84%"
|
340 |
+
13/11/2023,1950,1943,1954,1936,"183,70K","0,65%"
|
341 |
+
10/11/2023,1938,1964,1966,1937,"229,64K","-1,63%"
|
342 |
+
9/11/2023,1970,1956,1972,1948,"214,08K","0,61%"
|
343 |
+
8/11/2023,1958,1975,1978,1953,"189,36K","-0,8%"
|
344 |
+
7/11/2023,1974,1985,1985,1963,"218,95K","-0,76%"
|
345 |
+
6/11/2023,1989,1999,2000,1984,"146,28K","-0,53%"
|
346 |
+
3/11/2023,1999,1994,2012,1989,"222,19K","0,29%"
|
347 |
+
2/11/2023,1994,1992,1999,1986,"158,65K","0,3%"
|
348 |
+
1/11/2023,1988,1993,2006,1978,"197,63K","-0,34%"
|
349 |
+
31/10/2023,1994,2006,2018,1987,"214,78K","-0,56%"
|
350 |
+
30/10/2023,2006,2014,2017,2000,"181,34K","0,83%"
|
351 |
+
27/10/2023,1989,1988,2010,1979,"0,37K","0,06%"
|
352 |
+
26/10/2023,1988,1982,1993,1974,"0,20K","0,12%"
|
353 |
+
25/10/2023,1986,1972,1989,1971,"0,16K","0,44%"
|
354 |
+
24/10/2023,1977,1975,1980,1958,"1,23K","-0,07%"
|
355 |
+
23/10/2023,1978,1978,1983,1964,"0,45K","-0,34%"
|
356 |
+
20/10/2023,1985,1977,1999,1976,"1,03K","0,7%"
|
357 |
+
19/10/2023,1971,1950,1981,1948,"1,37K","0,63%"
|
358 |
+
18/10/2023,1959,1927,1966,1927,"0,33K","1,68%"
|
359 |
+
17/10/2023,1926,1923,1934,1918,"0,28K","0,07%"
|
360 |
+
16/10/2023,1925,1932,1932,1912,"0,47K","-0,36%"
|
361 |
+
13/10/2023,1932,1875,1935,1875,"0,89K","3,09%"
|
362 |
+
12/10/2023,1874,1880,1889,1872,"0,40K","-0,22%"
|
363 |
+
11/10/2023,1878,1865,1882,1864,"0,48K","0,63%"
|
364 |
+
10/10/2023,1867,1866,1870,1858,"0,36K","0,59%"
|
365 |
+
9/10/2023,1856,1851,1868,1849,"0,82K","1,03%"
|
366 |
+
6/10/2023,1837,1826,1840,1815,"0,65K","0,74%"
|
367 |
+
5/10/2023,1823,1828,1834,1818,"0,43K","-0,16%"
|
368 |
+
4/10/2023,1826,1829,1836,1823,"0,51K","-0,35%"
|
369 |
+
3/10/2023,1833,1836,1840,1823,"0,43K","-0,3%"
|
370 |
+
2/10/2023,1838,1854,1855,1834,"0,82K","-1,01%"
|
371 |
+
29/09/2023,1857,1873,1887,1853,"0,92K","-0,67%"
|
372 |
+
28/09/2023,1870,1885,1887,1866,"0,90K","-0,15%"
|
373 |
+
27/09/2023,1872,1900,1903,1872,"12,25K","-1,54%"
|
374 |
+
26/09/2023,1902,1917,1917,1899,"12,74K","-0,87%"
|
375 |
+
25/09/2023,1918,1926,1928,1916,"7,99K","-0,47%"
|
376 |
+
22/09/2023,1927,1922,1931,1922,"3,30K","0,31%"
|
377 |
+
21/09/2023,1921,1933,1934,1915,"5,62K","-1,41%"
|
378 |
+
20/09/2023,1949,1935,1950,1930,"6,22K","0,69%"
|
379 |
+
19/09/2023,1935,1937,1940,1933,"2,81K","0,01%"
|
380 |
+
18/09/2023,1935,1928,1937,1926,"3,19K","0,38%"
|
381 |
+
15/09/2023,1928,1914,1934,1913,"4,75K","0,71%"
|
382 |
+
14/09/2023,1914,1913,1916,1904,"5,99K",0.00%
|
383 |
+
13/09/2023,1914,1918,1920,1910,"4,87K","-0,15%"
|
384 |
+
12/9/2023,1917,1927,1929,1912,"4,77K","-0,62%"
|
385 |
+
11/9/2023,1929,1926,1937,1922,"3,09K","0,24%"
|
386 |
+
8/9/2023,1925,1926,1936,1923,"6,62K","0,03%"
|
387 |
+
7/9/2023,1924,1923,1929,1922,"4,06K","-0,09%"
|
388 |
+
6/9/2023,1926,1933,1936,1922,"5,41K","-0,44%"
|
389 |
+
5/9/2023,1934,1948,1954,1932,"7,21K","-0,94%"
|
390 |
+
4/9/2023,1953,1967,1973,1951,"192,79K","0,22%"
|
391 |
+
1/9/2023,1948,1948,1961,1942,"6,26K","0,07%"
|
392 |
+
31/08/2023,1947,1952,1956,1947,"4,06K","-0,36%"
|
393 |
+
30/08/2023,1954,1948,1958,1944,"6,33K","0,91%"
|
394 |
+
29/08/2023,1936,1920,1937,1914,"1,67K","0,93%"
|
395 |
+
28/08/2023,1919,1915,1926,1912,"0,39K","0,35%"
|
396 |
+
25/08/2023,1912,1916,1921,1903,"0,79K","-0,38%"
|
397 |
+
24/08/2023,1919,1919,1923,1912,"1,29K","-0,07%"
|
398 |
+
23/08/2023,1921,1899,1922,1899,"0,92K","1,15%"
|
399 |
+
22/08/2023,1899,1896,1906,1891,"1,02K","0,15%"
|
400 |
+
21/08/2023,1896,1891,1900,1886,"1,27K","0,37%"
|
401 |
+
18/08/2023,1889,1891,1898,1888,"0,61K","0,08%"
|
402 |
+
17/08/2023,1887,1895,1905,1887,"0,71K","-0,68%"
|
403 |
+
16/08/2023,1900,1905,1910,1894,"0,39K","-0,35%"
|
404 |
+
15/08/2023,1907,1911,1915,1900,"0,37K","-0,45%"
|
405 |
+
14/08/2023,1916,1915,1919,1906,"0,61K","-0,13%"
|
406 |
+
11/8/2023,1918,1916,1925,1914,"0,46K","-0,11%"
|
407 |
+
10/8/2023,1920,1921,1934,1916,"0,77K","-0,09%"
|
408 |
+
9/8/2023,1922,1930,1936,1920,"0,72K","-0,46%"
|
409 |
+
8/8/2023,1931,1942,1943,1928,"0,98K","-0,51%"
|
410 |
+
7/8/2023,1941,1949,1952,1937,"0,51K","-0,32%"
|
411 |
+
4/8/2023,1947,1941,1955,1928,"1,39K","0,36%"
|
412 |
+
3/8/2023,1940,1943,1946,1937,"0,51K","-0,31%"
|
413 |
+
2/8/2023,1946,1957,1963,1941,"0,74K","-0,19%"
|
414 |
+
1/8/2023,1950,1974,1974,1950,"1,55K","-1,51%"
|
415 |
+
31/07/2023,1980,1968,1981,1958,"0,62K","0,48%"
|
416 |
+
28/07/2023,1970,1956,1972,1954,"3,24K","1,25%"
|
417 |
+
27/07/2023,1946,1973,1983,1942,"194,25K","-1,24%"
|
418 |
+
26/07/2023,1970,1966,1980,1963,"208,11K","0,33%"
|
419 |
+
25/07/2023,1964,1957,1967,1952,"188,85K","0,08%"
|
420 |
+
24/07/2023,1962,1964,1970,1955,"197,21K","-0,22%"
|
421 |
+
21/07/2023,1967,1972,1976,1959,"156,54K","-0,22%"
|
422 |
+
20/07/2023,1971,1980,1990,1968,"189,93K","-0,5%"
|
423 |
+
19/07/2023,1981,1983,1985,1973,"159,41K",0.00%
|
424 |
+
18/07/2023,1981,1958,1988,1958,"264,09K","1,25%"
|
425 |
+
17/07/2023,1956,1959,1964,1949,"165,83K","-0,41%"
|
426 |
+
14/07/2023,1964,1965,1968,1955,"209,31K","0,03%"
|
427 |
+
13/07/2023,1964,1963,1969,1957,"241,22K","0,11%"
|
428 |
+
12/7/2023,1962,1938,1965,1938,"270,87K","1,27%"
|
429 |
+
11/7/2023,1937,1931,1945,1930,"189,37K","0,32%"
|
430 |
+
10/7/2023,1931,1931,1934,1918,"208,09K","-0,08%"
|
431 |
+
7/7/2023,1933,1917,1941,1915,"214,27K","0,89%"
|
432 |
+
6/7/2023,1915,1922,1934,1909,"231,51K","-0,61%"
|
433 |
+
5/7/2023,1927,1929,1943,1922,"245,93K",0.00%
|
434 |
+
4/7/2023,1927,1929,1943,1922,"245,93K","-0,12%"
|
435 |
+
3/7/2023,1930,1928,1940,1918,"152,96K","0,01%"
|
436 |
+
30/06/2023,1929,1916,1931,1908,"180,69K","0,6%"
|
437 |
+
29/06/2023,1918,1917,1921,1901,"205,25K","0,24%"
|
438 |
+
28/06/2023,1913,1915,1917,1904,"0,63K","-0,09%"
|
439 |
+
27/06/2023,1915,1927,1930,1912,"0,23K","-0,52%"
|
440 |
+
26/06/2023,1925,1926,1935,1923,"0,77K","0,21%"
|
441 |
+
23/06/2023,1921,1915,1939,1911,"0,75K","0,31%"
|
442 |
+
22/06/2023,1915,1936,1936,1914,"0,37K","-1,09%"
|
443 |
+
21/06/2023,1936,1940,1941,1922,"0,81K","-0,14%"
|
444 |
+
20/06/2023,1939,1962,1962,1932,"0,74K","-0,45%"
|
445 |
+
19/06/2023,1948,1971,1972,1941,"250,14K","-0,74%"
|
446 |
+
16/06/2023,1962,1961,1971,1957,"0,62K","0,02%"
|
447 |
+
15/06/2023,1962,1949,1964,1930,"0,82K","0,09%"
|
448 |
+
14/06/2023,1960,1949,1965,1944,"1,07K","0,52%"
|
449 |
+
13/06/2023,1950,1963,1976,1945,"0,76K","-0,56%"
|
450 |
+
12/6/2023,1961,1966,1972,1955,"0,44K","-0,38%"
|
451 |
+
9/6/2023,1968,1971,1978,1962,"0,43K","-0,08%"
|
452 |
+
8/6/2023,1970,1949,1976,1948,"1,14K","1,03%"
|
453 |
+
7/6/2023,1950,1971,1978,1947,"0,82K","-1,17%"
|
454 |
+
6/6/2023,1973,1969,1974,1962,"0,34K","0,37%"
|
455 |
+
5/6/2023,1966,1954,1971,1945,"1,70K","0,26%"
|
456 |
+
2/6/2023,1961,1985,1991,1955,"1,02K","-1,3%"
|
457 |
+
1/6/2023,1987,1972,1991,1961,"1,05K","0,68%"
|
458 |
+
31/05/2023,1973,1968,1984,1963,"1,13K","0,25%"
|
459 |
+
30/05/2023,1968,1952,1972,1941,"3,55K","-0,46%"
|
460 |
+
29/05/2023,1977,1961,1982,1950,"264,37K","1,69%"
|
461 |
+
26/05/2023,1944,1942,1957,1936,"166,04K","0,03%"
|
462 |
+
25/05/2023,1944,1960,1965,1939,"253,88K","-1,06%"
|
463 |
+
24/05/2023,1965,1977,1988,1958,"229,89K","-0,5%"
|
464 |
+
23/05/2023,1975,1974,1980,1956,"214,36K","-0,14%"
|
465 |
+
22/05/2023,1977,1979,1985,1971,"165,77K","-0,22%"
|
466 |
+
19/05/2023,1982,1961,1987,1956,"234,60K","1,11%"
|
467 |
+
18/05/2023,1960,1986,1989,1954,"227,73K","-1,26%"
|
468 |
+
17/05/2023,1985,1993,1997,1978,"206,55K","-0,41%"
|
469 |
+
16/05/2023,1993,2021,2023,1989,"229,94K","-1,47%"
|
470 |
+
15/05/2023,2023,2013,2028,2011,"163,25K","0,14%"
|
471 |
+
12/5/2023,2020,2021,2028,2006,"220,50K","-0,03%"
|
472 |
+
11/5/2023,2021,2037,2048,2017,"296,98K","-0,81%"
|
473 |
+
10/5/2023,2037,2042,2056,2028,"260,81K","-0,28%"
|
474 |
+
9/5/2023,2043,2028,2045,2026,"199,70K","0,48%"
|
475 |
+
8/5/2023,2033,2025,2037,2022,"182,21K","0,41%"
|
476 |
+
5/5/2023,2025,2058,2061,2007,"283,30K","-1,5%"
|
477 |
+
4/5/2023,2056,2055,2085,2039,"311,00K","0,92%"
|
478 |
+
3/5/2023,2037,2026,2050,2016,"229,67K","0,68%"
|
479 |
+
2/5/2023,2023,1991,2029,1987,"245,64K","1,56%"
|
480 |
+
1/5/2023,1992,2000,2015,1986,"173,02K","-0,35%"
|
481 |
+
28/04/2023,1999,1997,2004,1984,"172,45K","0,01%"
|
482 |
+
27/04/2023,1999,2000,2013,1982,"203,90K","0,61%"
|
483 |
+
26/04/2023,1987,2000,2010,1987,"0,62K","-0,41%"
|
484 |
+
25/04/2023,1995,1995,2005,1979,"0,85K","0,23%"
|
485 |
+
24/04/2023,1991,1983,1991,1975,"0,54K","0,47%"
|
486 |
+
21/04/2023,1981,2005,2007,1973,"0,62K","-1,42%"
|
487 |
+
20/04/2023,2010,1997,2015,1994,"0,42K","0,59%"
|
488 |
+
19/04/2023,1998,2009,2010,1972,"0,92K","-0,61%"
|
489 |
+
18/04/2023,2010,1997,2013,1995,"0,22K","0,64%"
|
490 |
+
17/04/2023,1998,2005,2018,1985,"0,74K","-0,44%"
|
491 |
+
14/04/2023,2007,2045,2052,1997,"1,48K","-1,92%"
|
492 |
+
13/04/2023,2046,2020,2053,2020,"0,93K","1,49%"
|
493 |
+
12/4/2023,2016,2010,2034,2007,"0,83K","0,28%"
|
494 |
+
11/4/2023,2010,1997,2013,1996,"0,46K","0,76%"
|
495 |
+
10/4/2023,1995,2004,2011,1988,"1,00K","-1,12%"
|
496 |
+
6/4/2023,2017,2028,2029,2008,"1,20K","-0,46%"
|
497 |
+
5/4/2023,2027,2030,2040,2019,"1,17K","-0,13%"
|
498 |
+
4/4/2023,2029,1993,2034,1986,"1,09K","1,91%"
|
499 |
+
3/4/2023,1991,1983,1999,1957,"0,76K","0,72%"
|
500 |
+
31/03/2023,1977,1989,1996,1975,"0,75K","-0,58%"
|
501 |
+
30/03/2023,1989,1973,1993,1963,"1,19K","1,1%"
|
502 |
+
29/03/2023,1967,1975,1976,1960,"88,56K","-0,33%"
|
503 |
+
28/03/2023,1974,1958,1977,1950,"183,58K","1,01%"
|
504 |
+
27/03/2023,1954,1983,1984,1945,"206,63K","-1,51%"
|
505 |
+
24/03/2023,1984,1996,2007,1978,"285,44K","-0,61%"
|
506 |
+
23/03/2023,1996,1974,2006,1967,"262,25K","2,37%"
|
507 |
+
22/03/2023,1950,1944,1982,1937,"245,03K","0,44%"
|
508 |
+
21/03/2023,1941,1983,1989,1939,"248,93K","-2,1%"
|
509 |
+
20/03/2023,1983,1990,2015,1970,"338,02K","0,47%"
|
510 |
+
17/03/2023,1974,1926,1994,1922,"351,09K","2,63%"
|
511 |
+
16/03/2023,1923,1923,1938,1912,"248,08K","-0,43%"
|
512 |
+
15/03/2023,1931,1908,1943,1890,"385,45K","1,07%"
|
513 |
+
14/03/2023,1911,1919,1919,1900,"261,28K","-0,29%"
|
514 |
+
13/03/2023,1917,1877,1920,1876,"452,33K","2,64%"
|
515 |
+
10/3/2023,1867,1835,1874,1830,"345,81K","1,78%"
|
516 |
+
9/3/2023,1835,1818,1839,1815,"228,47K","0,88%"
|
517 |
+
8/3/2023,1819,1818,1829,1813,"208,29K","-0,08%"
|
518 |
+
7/3/2023,1820,1853,1857,1817,"248,23K","-1,87%"
|
519 |
+
6/3/2023,1855,1861,1864,1851,"136,22K",0.00%
|
520 |
+
3/3/2023,1855,1842,1864,1842,"158,96K","0,77%"
|
521 |
+
2/3/2023,1841,1844,1845,1836,"139,76K","-0,27%"
|
522 |
+
1/3/2023,1845,1834,1853,1830,"182,58K","0,47%"
|
523 |
+
28/02/2023,1837,1824,1839,1811,"184,51K","0,65%"
|
524 |
+
27/02/2023,1825,1818,1827,1812,"130,43K","0,87%"
|
525 |
+
24/02/2023,1809,1825,1827,1809,"0,40K","-0,53%"
|
526 |
+
23/02/2023,1819,1824,1833,1818,"0,65K","-0,79%"
|
527 |
+
22/02/2023,1833,1837,1846,1825,"0,57K","-0,05%"
|
528 |
+
21/02/2023,1834,1842,1848,1831,"0,91K","-0,45%"
|
529 |
+
20/02/2023,1843,1851,1856,1839,"210,17K","0,03%"
|
530 |
+
17/02/2023,1842,1836,1845,1820,"0,73K","-0,08%"
|
531 |
+
16/02/2023,1843,1839,1846,1828,"0,65K","0,35%"
|
532 |
+
15/02/2023,1837,1856,1862,1832,"0,78K","-1,08%"
|
533 |
+
14/02/2023,1857,1856,1871,1845,"0,72K","0,1%"
|
534 |
+
13/02/2023,1855,1867,1869,1853,"0,83K","-0,58%"
|
535 |
+
10/2/2023,1866,1865,1873,1855,"0,77K","-0,22%"
|
536 |
+
9/2/2023,1870,1879,1894,1862,"0,85K","-0,65%"
|
537 |
+
8/2/2023,1882,1877,1890,1874,"1,03K","0,3%"
|
538 |
+
7/2/2023,1877,1872,1889,1869,"1,45K","0,28%"
|
539 |
+
6/2/2023,1871,1867,1885,1866,"1,59K","0,16%"
|
540 |
+
3/2/2023,1868,1918,1924,1866,"2,60K","-2,8%"
|
541 |
+
2/2/2023,1922,1959,1966,1917,"1,87K","-0,63%"
|
542 |
+
1/2/2023,1934,1935,1962,1928,"2,19K","-0,12%"
|
543 |
+
31/01/2023,1937,1930,1938,1907,"1,81K","0,33%"
|
544 |
+
30/01/2023,1930,1936,1941,1927,"2,80K","0,04%"
|
545 |
+
27/01/2023,1929,1929,1935,1917,"150,90K","-0,03%"
|
546 |
+
26/01/2023,1930,1948,1950,1918,"223,26K","-0,65%"
|
547 |
+
25/01/2023,1943,1939,1950,1921,"190,30K","0,37%"
|
548 |
+
24/01/2023,1935,1932,1944,1918,"201,71K","0,35%"
|
549 |
+
23/01/2023,1929,1928,1937,1913,"190,09K","0,02%"
|
550 |
+
20/01/2023,1928,1934,1939,1922,"165,27K","0,22%"
|
551 |
+
19/01/2023,1924,1907,1937,1902,"214,25K","0,89%"
|
552 |
+
18/01/2023,1907,1911,1930,1899,"218,97K","-0,15%"
|
553 |
+
17/01/2023,1910,1924,1932,1906,"268,37K",0.00%
|
554 |
+
16/01/2023,1910,1924,1932,1906,"268,37K","-0,61%"
|
555 |
+
13/01/2023,1922,1899,1925,1895,"247,88K","1,21%"
|
556 |
+
12/1/2023,1899,1880,1907,1872,"265,17K","1,06%"
|
557 |
+
11/1/2023,1879,1881,1891,1871,"222,25K","0,13%"
|
558 |
+
10/1/2023,1877,1876,1885,1872,"170,51K","-0,07%"
|
559 |
+
9/1/2023,1878,1873,1886,1869,"204,55K","0,43%"
|
560 |
+
6/1/2023,1870,1836,1875,1835,"215,37K","1,58%"
|
561 |
+
5/1/2023,1841,1861,1864,1830,"188,60K","-0,99%"
|
562 |
+
4/1/2023,1859,1845,1871,1842,"198,35K","0,7%"
|
563 |
+
3/1/2023,1846,1832,1857,1831,"212,27K","1,09%"
|
564 |
+
30/12/2022,1826,1822,1832,1820,"107,50K","0,01%"
|
565 |
+
29/12/2022,1826,1812,1827,1811,"105,99K","0,95%"
|
566 |
+
28/12/2022,1809,1812,1812,1801,"0,43K","-0,41%"
|
567 |
+
27/12/2022,1816,1800,1834,1800,"0,22K","1,05%"
|
568 |
+
23/12/2022,1797,1794,1806,1793,"0,24K","0,5%"
|
569 |
+
22/12/2022,1789,1818,1822,1787,"0,41K","-1,65%"
|
570 |
+
21/12/2022,1819,1822,1825,1816,"0,16K","-0,01%"
|
571 |
+
20/12/2022,1819,1796,1824,1790,"0,51K","1,54%"
|
572 |
+
19/12/2022,1791,1795,1801,1789,"0,21K","-0,14%"
|
573 |
+
16/12/2022,1794,1780,1797,1779,"0,43K","0,72%"
|
574 |
+
15/12/2022,1781,1812,1812,1775,"0,69K","-1,71%"
|
575 |
+
14/12/2022,1812,1815,1817,1800,"0,28K","-0,37%"
|
576 |
+
13/12/2022,1818,1786,1829,1785,"0,57K","1,87%"
|
577 |
+
12/12/2022,1785,1802,1802,1782,"0,31K","-1,03%"
|
578 |
+
9/12/2022,1804,1794,1811,1794,"0,50K","0,52%"
|
579 |
+
8/12/2022,1794,1793,1799,1787,"0,56K","0,18%"
|
580 |
+
7/12/2022,1791,1775,1796,1774,"0,84K","0,87%"
|
581 |
+
6/12/2022,1776,1775,1786,1773,"0,55K","0,07%"
|
582 |
+
5/12/2022,1774,1804,1815,1772,"1,34K","-1,57%"
|
583 |
+
2/12/2022,1803,1810,1812,1786,"1,17K","-0,31%"
|
584 |
+
1/12/2022,1808,1778,1811,1778,"1,27K","3,14%"
|
585 |
+
30/11/2022,1753,1756,1777,1752,"1,56K","-0,18%"
|
586 |
+
29/11/2022,1756,1748,1765,1746,"1,59K","0,92%"
|
587 |
+
28/11/2022,1740,1755,1764,1738,"132,77K","-0,78%"
|
588 |
+
25/11/2022,1754,1751,1761,1746,"134,30K",0.00%
|
589 |
+
24/11/2022,1754,1751,1761,1746,"134,30K","0,48%"
|
590 |
+
23/11/2022,1746,1741,1755,1719,"167,77K","0,33%"
|
591 |
+
22/11/2022,1740,1740,1751,1738,"153,09K","0,02%"
|
592 |
+
21/11/2022,1740,1752,1755,1734,"166,08K","-0,84%"
|
593 |
+
18/11/2022,1754,1763,1770,1749,"137,33K","-0,49%"
|
594 |
+
17/11/2022,1763,1777,1778,1757,"169,10K","-0,72%"
|
595 |
+
16/11/2022,1776,1782,1788,1773,"200,76K","-0,06%"
|
596 |
+
15/11/2022,1777,1774,1792,1770,"283,02K","-0,01%"
|
597 |
+
14/11/2022,1777,1769,1778,1756,"191,35K","0,42%"
|
598 |
+
11/11/2022,1769,1758,1776,1750,"227,04K","0,9%"
|
599 |
+
10/11/2022,1754,1710,1761,1706,"305,72K","2,33%"
|
600 |
+
9/11/2022,1714,1715,1726,1705,"239,65K","-0,13%"
|
601 |
+
8/11/2022,1716,1678,1720,1667,"297,62K","2,11%"
|
602 |
+
7/11/2022,1681,1679,1686,1670,"187,59K","0,23%"
|
603 |
+
4/11/2022,1677,1632,1686,1631,"293,52K","2,8%"
|
604 |
+
3/11/2022,1631,1639,1643,1618,"254,70K","-1,16%"
|
605 |
+
2/11/2022,1650,1651,1673,1637,"220,93K","0,02%"
|
606 |
+
1/11/2022,1650,1636,1660,1634,"197,98K","0,55%"
|
607 |
+
31/10/2022,1641,1647,1649,1635,"128,41K","-0,25%"
|
608 |
+
28/10/2022,1645,1667,1671,1641,"196,36K","-0,93%"
|
609 |
+
27/10/2022,1660,1664,1669,1654,"2,30K","-0,25%"
|
610 |
+
26/10/2022,1664,1652,1674,1652,"0,32K","0,67%"
|
611 |
+
25/10/2022,1653,1650,1661,1637,"0,59K","0,25%"
|
612 |
+
24/10/2022,1649,1662,1666,1644,"0,15K","-0,14%"
|
613 |
+
21/10/2022,1652,1626,1657,1618,"0,64K","1,21%"
|
614 |
+
20/10/2022,1632,1629,1644,1621,"0,50K","0,17%"
|
615 |
+
19/10/2022,1629,1652,1654,1628,"0,30K","-1,31%"
|
616 |
+
18/10/2022,1651,1651,1660,1647,"0,72K","-0,49%"
|
617 |
+
17/10/2022,1659,1646,1668,1645,"0,60K","0,92%"
|
618 |
+
14/10/2022,1644,1666,1672,1641,"0,64K","-1,68%"
|
619 |
+
13/10/2022,1672,1675,1680,1645,"0,32K","-0,03%"
|
620 |
+
12/10/2022,1672,1668,1680,1663,"0,23K","-0,51%"
|
621 |
+
11/10/2022,1681,1670,1686,1665,"0,74K","0,65%"
|
622 |
+
10/10/2022,1670,1699,1701,1668,"0,49K","-1,99%"
|
623 |
+
7/10/2022,1704,1714,1715,1694,"0,26K","-0,67%"
|
624 |
+
6/10/2022,1716,1719,1729,1710,"0,23K","-0,01%"
|
625 |
+
5/10/2022,1716,1729,1730,1704,"1,04K","-0,57%"
|
626 |
+
4/10/2022,1726,1703,1732,1700,"0,81K","1,67%"
|
627 |
+
3/10/2022,1697,1668,1704,1664,"0,64K","1,8%"
|
628 |
+
30/09/2022,1667,1665,1679,1663,"0,39K","0,22%"
|
629 |
+
29/09/2022,1664,1662,1668,1645,"2,39K","0,2%"
|
630 |
+
28/09/2022,1660,1627,1662,1613,"18,31K","2,08%"
|
631 |
+
27/09/2022,1627,1622,1640,1621,"15,91K","0,18%"
|
632 |
+
26/09/2022,1624,1643,1646,1618,"14,96K","-1,32%"
|
633 |
+
23/09/2022,1645,1670,1675,1636,"17,01K","-1,56%"
|
634 |
+
22/09/2022,1671,1670,1684,1654,"6,42K","0,34%"
|
635 |
+
21/09/2022,1666,1665,1687,1652,"10,10K","0,29%"
|
636 |
+
20/09/2022,1661,1675,1678,1658,"7,07K","-0,4%"
|
637 |
+
19/09/2022,1668,1673,1678,1657,"6,29K","-0,31%"
|
638 |
+
16/09/2022,1673,1663,1679,1652,"10,86K","0,36%"
|
639 |
+
15/09/2022,1667,1697,1697,1659,"12,32K","-1,85%"
|
640 |
+
14/09/2022,1698,1703,1707,1693,"7,08K","-0,52%"
|
641 |
+
13/09/2022,1707,1726,1733,1697,"11,55K","-1,37%"
|
642 |
+
12/9/2022,1731,1719,1736,1713,"5,71K","0,7%"
|
643 |
+
9/9/2022,1719,1710,1731,1710,"8,17K","0,48%"
|
644 |
+
8/9/2022,1711,1720,1729,1704,"5,09K","-0,44%"
|
645 |
+
7/9/2022,1718,1703,1721,1693,"7,51K","0,87%"
|
646 |
+
6/9/2022,1703,1715,1727,1701,"7,57K","-0,55%"
|
647 |
+
5/9/2022,1713,1724,1737,1711,"206,27K","-0,01%"
|
648 |
+
2/9/2022,1713,1699,1720,1697,"8,55K","0,79%"
|
649 |
+
1/9/2022,1700,1713,1713,1690,"11,25K","-1,01%"
|
650 |
+
31/08/2022,1717,1726,1729,1712,"8,91K","-0,58%"
|
651 |
+
30/08/2022,1727,1741,1743,1724,"6,95K","-0,56%"
|
652 |
+
29/08/2022,1737,1736,1741,1718,"0,95K","0,01%"
|
653 |
+
26/08/2022,1737,1758,1758,1733,"1,05K","-1,21%"
|
654 |
+
25/08/2022,1758,1751,1765,1750,"0,73K","0,57%"
|
655 |
+
24/08/2022,1748,1746,1755,1742,"0,97K","0,03%"
|
656 |
+
23/08/2022,1747,1735,1753,1730,"1,57K","0,74%"
|
657 |
+
22/08/2022,1734,1747,1747,1726,"0,68K","-0,8%"
|
658 |
+
19/08/2022,1748,1758,1758,1745,"0,62K","-0,46%"
|
659 |
+
18/08/2022,1757,1763,1771,1755,"0,71K","-0,31%"
|
660 |
+
17/08/2022,1762,1776,1782,1759,"0,62K","-0,73%"
|
661 |
+
16/08/2022,1775,1780,1783,1771,"0,43K","-0,47%"
|
662 |
+
15/08/2022,1783,1804,1804,1773,"0,66K","-0,97%"
|
663 |
+
12/8/2022,1801,1789,1804,1786,"0,57K","0,49%"
|
664 |
+
11/8/2022,1792,1792,1799,1784,"1,92K","-0,36%"
|
665 |
+
10/8/2022,1799,1796,1809,1788,"1,60K","0,09%"
|
666 |
+
9/8/2022,1797,1790,1801,1784,"0,93K","0,4%"
|
667 |
+
8/8/2022,1790,1776,1790,1772,"1,69K","0,78%"
|
668 |
+
5/8/2022,1776,1791,1795,1765,"2,04K","-0,86%"
|
669 |
+
4/8/2022,1791,1766,1796,1764,"1,65K","1,72%"
|
670 |
+
3/8/2022,1761,1763,1774,1755,"1,82K","-0,78%"
|
671 |
+
2/8/2022,1775,1774,1791,1762,"2,47K","0,12%"
|
672 |
+
1/8/2022,1773,1768,1777,1760,"1,07K","0,33%"
|
673 |
+
29/07/2022,1767,1759,1770,1754,"0,86K","0,71%"
|
674 |
+
28/07/2022,1754,1737,1759,1737,"1,47K","2,05%"
|
675 |
+
27/07/2022,1719,1715,1740,1709,"144,87K","0,08%"
|
676 |
+
26/07/2022,1718,1718,1726,1712,"147,37K","-0,08%"
|
677 |
+
25/07/2022,1719,1726,1735,1713,"160,72K","-0,48%"
|
678 |
+
22/07/2022,1727,1717,1738,1712,"200,62K","0,82%"
|
679 |
+
21/07/2022,1713,1694,1720,1678,"248,88K","0,78%"
|
680 |
+
20/07/2022,1700,1710,1713,1690,"174,47K","-0,61%"
|
681 |
+
19/07/2022,1711,1707,1717,1703,"131,77K","0,03%"
|
682 |
+
18/07/2022,1710,1706,1722,1704,"157,54K","0,39%"
|
683 |
+
15/07/2022,1704,1708,1714,1697,"176,80K","-0,13%"
|
684 |
+
14/07/2022,1706,1734,1735,1695,"266,35K","-1,71%"
|
685 |
+
13/07/2022,1736,1724,1744,1705,"300,55K","0,62%"
|
686 |
+
12/7/2022,1725,1731,1742,1722,"255,17K","-0,4%"
|
687 |
+
11/7/2022,1732,1742,1743,1729,"171,90K","-0,61%"
|
688 |
+
8/7/2022,1742,1739,1752,1726,"189,18K","0,15%"
|
689 |
+
7/7/2022,1740,1737,1748,1735,"151,26K","0,18%"
|
690 |
+
6/7/2022,1737,1764,1772,1731,"258,82K","-1,55%"
|
691 |
+
5/7/2022,1764,1814,1815,1763,"310,37K",0.00%
|
692 |
+
4/7/2022,1764,1814,1815,1763,"310,37K","-2,09%"
|
693 |
+
1/7/2022,1802,1808,1814,1783,"249,49K","-0,32%"
|
694 |
+
30/06/2022,1807,1819,1827,1803,"208,90K","-0,56%"
|
695 |
+
29/06/2022,1818,1821,1835,1811,"155,54K",0.00%
|
696 |
+
28/06/2022,1818,1820,1825,1816,"0,39K","-0,19%"
|
697 |
+
27/06/2022,1821,1833,1837,1818,"0,58K","-0,33%"
|
698 |
+
24/06/2022,1827,1823,1829,1815,"0,57K","0,04%"
|
699 |
+
23/06/2022,1826,1835,1843,1822,"0,23K","-0,48%"
|
700 |
+
22/06/2022,1835,1829,1845,1822,"0,53K","-0,01%"
|
701 |
+
21/06/2022,1835,1835,1842,1831,"0,42K","-0,18%"
|
702 |
+
20/06/2022,1839,1841,1848,1831,"176,30K","0,13%"
|
703 |
+
17/06/2022,1837,1852,1852,1832,"0,48K","-0,55%"
|
704 |
+
16/06/2022,1847,1832,1856,1816,"0,98K","1,67%"
|
705 |
+
15/06/2022,1816,1807,1840,1806,"1,03K","0,32%"
|
706 |
+
14/06/2022,1811,1811,1830,1803,"1,37K","-1,02%"
|
707 |
+
13/06/2022,1829,1876,1880,1819,"0,73K","-2,32%"
|
708 |
+
10/6/2022,1873,1848,1877,1824,"1,15K","1,22%"
|
709 |
+
9/6/2022,1850,1853,1854,1839,"0,34K","-0,19%"
|
710 |
+
8/6/2022,1854,1852,1859,1844,"0,17K","0,24%"
|
711 |
+
7/6/2022,1849,1841,1855,1836,"0,62K","0,46%"
|
712 |
+
6/6/2022,1841,1850,1858,1840,"0,31K","-0,35%"
|
713 |
+
3/6/2022,1847,1870,1875,1847,"0,57K","-1,13%"
|
714 |
+
2/6/2022,1868,1847,1871,1844,"0,70K","1,22%"
|
715 |
+
1/6/2022,1846,1837,1850,1828,"1,23K","0,03%"
|
716 |
+
31/05/2022,1845,1853,1864,1835,"1,81K","-0,17%"
|
717 |
+
30/05/2022,1848,1857,1868,1838,"201,80K","-0,3%"
|
718 |
+
27/05/2022,1854,1852,1863,1850,"1,10K","0,35%"
|
719 |
+
26/05/2022,1848,1852,1853,1836,"123,36K","0,07%"
|
720 |
+
25/05/2022,1846,1865,1867,1839,"182,82K","-1,02%"
|
721 |
+
24/05/2022,1865,1852,1869,1848,"174,76K","0,95%"
|
722 |
+
23/05/2022,1848,1844,1864,1843,"163,27K","0,31%"
|
723 |
+
20/05/2022,1842,1840,1848,1831,"143,05K","0,05%"
|
724 |
+
19/05/2022,1841,1815,1848,1808,"175,24K","1,39%"
|
725 |
+
18/05/2022,1816,1813,1823,1805,"150,35K","-0,16%"
|
726 |
+
17/05/2022,1819,1824,1835,1811,"137,29K","0,27%"
|
727 |
+
16/05/2022,1814,1809,1826,1785,"159,49K","0,32%"
|
728 |
+
13/05/2022,1808,1821,1828,1797,"179,48K","-0,9%"
|
729 |
+
12/5/2022,1825,1852,1859,1820,"255,61K","-1,57%"
|
730 |
+
11/5/2022,1854,1837,1858,1831,"243,56K","0,69%"
|
731 |
+
10/5/2022,1841,1854,1865,1835,"260,81K","-0,95%"
|
732 |
+
9/5/2022,1859,1884,1886,1851,"218,82K","-1,29%"
|
733 |
+
6/5/2022,1883,1878,1894,1865,"194,28K","0,38%"
|
734 |
+
5/5/2022,1876,1884,1911,1872,"218,39K","0,37%"
|
735 |
+
4/5/2022,1869,1868,1892,1861,"161,48K","-0,1%"
|
736 |
+
3/5/2022,1871,1864,1878,1850,"167,43K","0,38%"
|
737 |
+
2/5/2022,1864,1896,1900,1853,"193,83K","-2,52%"
|
738 |
+
29/04/2022,1912,1896,1921,1894,"177,14K","1,08%"
|
739 |
+
28/04/2022,1891,1887,1898,1871,"170,91K","0,29%"
|
740 |
+
27/04/2022,1886,1903,1903,1879,"1,79K","-0,83%"
|
741 |
+
26/04/2022,1902,1899,1909,1894,"0,46K","0,43%"
|
742 |
+
25/04/2022,1893,1932,1932,1890,"1,62K","-1,98%"
|
743 |
+
22/04/2022,1932,1950,1954,1927,"0,67K","-0,71%"
|
744 |
+
21/04/2022,1945,1955,1955,1936,"0,47K","-0,38%"
|
745 |
+
20/04/2022,1953,1950,1958,1939,"0,63K","-0,17%"
|
746 |
+
19/04/2022,1956,1979,1981,1944,"0,78K","-1,38%"
|
747 |
+
18/04/2022,1984,1975,2000,1973,"0,51K","0,58%"
|
748 |
+
14/04/2022,1972,1978,1981,1961,"0,57K","-0,49%"
|
749 |
+
13/04/2022,1982,1969,1982,1964,"0,53K","0,44%"
|
750 |
+
12/4/2022,1973,1954,1979,1951,"1,00K","1,44%"
|
751 |
+
11/4/2022,1945,1950,1971,1941,"0,40K","0,14%"
|
752 |
+
8/4/2022,1942,1931,1949,1929,"0,96K","0,4%"
|
753 |
+
7/4/2022,1935,1924,1937,1920,"1,19K","0,78%"
|
754 |
+
6/4/2022,1920,1925,1932,1914,"1,21K","-0,23%"
|
755 |
+
5/4/2022,1924,1934,1945,1918,"1,19K","-0,34%"
|
756 |
+
4/4/2022,1931,1925,1938,1918,"2,01K","0,5%"
|
757 |
+
1/4/2022,1921,1939,1941,1919,"1,09K","-1,55%"
|
758 |
+
31/03/2022,1951,1935,1952,1922,"1,46K","0,77%"
|
759 |
+
30/03/2022,1936,1922,1940,1918,"2,38K","1,25%"
|
760 |
+
29/03/2022,1912,1922,1929,1888,"128,05K","-1,42%"
|
761 |
+
28/03/2022,1940,1959,1960,1916,"181,37K","-0,74%"
|
762 |
+
25/03/2022,1954,1958,1965,1943,"147,90K","-0,41%"
|
763 |
+
24/03/2022,1962,1944,1967,1937,"181,20K","1,29%"
|
764 |
+
23/03/2022,1937,1921,1949,1916,"153,31K","0,82%"
|
765 |
+
22/03/2022,1922,1936,1940,1910,"153,28K","-0,41%"
|
766 |
+
21/03/2022,1930,1922,1942,1917,"146,41K","0,01%"
|
767 |
+
18/03/2022,1929,1944,1946,1918,"150,88K","-0,72%"
|
768 |
+
17/03/2022,1943,1928,1951,1924,"149,83K","1,78%"
|
769 |
+
16/03/2022,1909,1920,1930,1895,"195,46K","-1,06%"
|
770 |
+
15/03/2022,1930,1954,1957,1908,"220,37K","-1,59%"
|
771 |
+
14/03/2022,1961,1989,1995,1952,"162,20K","-1,22%"
|
772 |
+
11/3/2022,1985,2000,2004,1961,"262,09K","-0,77%"
|
773 |
+
10/3/2022,2000,1993,2015,1975,"303,27K","0,61%"
|
774 |
+
9/3/2022,1988,2060,2069,1981,"360,35K","-2,7%"
|
775 |
+
8/3/2022,2043,2001,2079,1986,"447,65K","2,37%"
|
776 |
+
7/3/2022,1996,1979,2008,1964,"372,19K","1,49%"
|
777 |
+
4/3/2022,1967,1939,1975,1932,"241,53K","1,59%"
|
778 |
+
3/3/2022,1936,1932,1945,1923,"180,21K","0,71%"
|
779 |
+
2/3/2022,1922,1945,1951,1916,"227,98K","-1,11%"
|
780 |
+
1/3/2022,1944,1908,1953,1903,"224,00K","2,27%"
|
781 |
+
28/02/2022,1901,1921,1935,1892,"249,27K","0,69%"
|
782 |
+
25/02/2022,1888,1907,1925,1884,"229,78K","-1,96%"
|
783 |
+
24/02/2022,1925,1911,1975,1880,"2,71K","0,84%"
|
784 |
+
23/02/2022,1909,1900,1912,1890,"1,98K","0,16%"
|
785 |
+
22/02/2022,1906,1903,1917,1889,"2,19K","-0,05%"
|
786 |
+
21/02/2022,1907,1904,1918,1890,"334,59K","0,45%"
|
787 |
+
18/02/2022,1899,1901,1904,1888,"0,64K","-0,12%"
|
788 |
+
17/02/2022,1901,1871,1902,1870,"0,96K","1,63%"
|
789 |
+
16/02/2022,1871,1854,1873,1852,"0,43K","0,83%"
|
790 |
+
15/02/2022,1855,1872,1880,1845,"0,88K","-0,71%"
|
791 |
+
14/02/2022,1868,1861,1875,1851,"0,86K","1,48%"
|
792 |
+
11/2/2022,1841,1827,1866,1822,"0,95K","0,26%"
|
793 |
+
10/2/2022,1836,1833,1842,1821,"0,79K","0,04%"
|
794 |
+
9/2/2022,1836,1826,1836,1825,"0,88K","0,48%"
|
795 |
+
8/2/2022,1827,1821,1829,1816,"0,93K","0,33%"
|
796 |
+
7/2/2022,1821,1808,1823,1808,"1,41K","0,77%"
|
797 |
+
4/2/2022,1807,1805,1815,1792,"1,62K","0,2%"
|
798 |
+
3/2/2022,1803,1807,1808,1788,"1,18K","-0,35%"
|
799 |
+
2/2/2022,1810,1800,1811,1795,"1,22K","0,48%"
|
800 |
+
1/2/2022,1801,1798,1809,1796,"2,54K","0,27%"
|
801 |
+
31/01/2022,1796,1792,1800,1786,"1,37K","0,57%"
|
802 |
+
28/01/2022,1786,1798,1799,1780,"1,30K","-0,41%"
|
803 |
+
27/01/2022,1793,1819,1821,1791,"196,04K",-2.00%
|
804 |
+
26/01/2022,1830,1848,1850,1814,"270,03K","-1,23%"
|
805 |
+
25/01/2022,1853,1844,1854,1834,"197,80K","0,59%"
|
806 |
+
24/01/2022,1842,1835,1845,1829,"244,33K","0,54%"
|
807 |
+
21/01/2022,1832,1841,1844,1828,"225,25K","-0,59%"
|
808 |
+
20/01/2022,1843,1840,1849,1836,"233,86K","-0,03%"
|
809 |
+
19/01/2022,1843,1813,1844,1809,"318,49K","1,7%"
|
810 |
+
18/01/2022,1812,1819,1823,1805,"362,94K",0.00%
|
811 |
+
17/01/2022,1812,1819,1823,1805,"362,94K","-0,23%"
|
812 |
+
14/01/2022,1817,1822,1829,1814,"174,94K","-0,27%"
|
813 |
+
13/01/2022,1821,1826,1828,1812,"215,52K","-0,32%"
|
814 |
+
12/1/2022,1827,1821,1828,1814,"192,98K","0,48%"
|
815 |
+
11/1/2022,1819,1801,1823,1800,"184,15K","1,1%"
|
816 |
+
10/1/2022,1799,1796,1802,1789,"173,04K","0,08%"
|
817 |
+
7/1/2022,1797,1791,1798,1781,"238,93K","0,46%"
|
818 |
+
6/1/2022,1789,1811,1812,1785,"238,64K","-1,97%"
|
819 |
+
5/1/2022,1825,1815,1831,1808,"173,34K","0,58%"
|
820 |
+
4/1/2022,1815,1801,1817,1798,"167,71K","0,81%"
|
821 |
+
3/1/2022,1800,1830,1833,1798,"168,31K","-1,56%"
|
model.pkl
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:8318d2d632e7c1afb53ed2eea2d61dcab5160a6c476b5904969b65bf31c5bfeb
|
3 |
+
size 977
|
requirements.txt
ADDED
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
Flask==2.3.3
|
2 |
+
pandas==2.0.3
|
3 |
+
numpy==1.24.3
|
4 |
+
scikit-learn==1.3.0
|
5 |
+
matplotlib==3.7.2
|
6 |
+
seaborn==0.12.2
|
7 |
+
Werkzeug==2.3.7
|
scaler.pkl
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:979f0bc38f3c9923f8e433575b8d161ff21fa37d8a00932c41f847263dadfba1
|
3 |
+
size 561
|
templates/data_analysis.html
ADDED
@@ -0,0 +1,208 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<!DOCTYPE html>
|
2 |
+
<html lang="en">
|
3 |
+
<head>
|
4 |
+
<meta charset="UTF-8">
|
5 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
6 |
+
<title>Data Analysis - Gold Price Prediction</title>
|
7 |
+
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
|
8 |
+
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" rel="stylesheet">
|
9 |
+
<style>
|
10 |
+
.gradient-bg {
|
11 |
+
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
12 |
+
color: white;
|
13 |
+
}
|
14 |
+
.gold-accent {
|
15 |
+
color: #FFD700;
|
16 |
+
}
|
17 |
+
.stat-card {
|
18 |
+
border: none;
|
19 |
+
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
|
20 |
+
transition: transform 0.3s ease;
|
21 |
+
}
|
22 |
+
.stat-card:hover {
|
23 |
+
transform: translateY(-5px);
|
24 |
+
}
|
25 |
+
.navbar-brand {
|
26 |
+
font-weight: bold;
|
27 |
+
}
|
28 |
+
</style>
|
29 |
+
</head>
|
30 |
+
<body>
|
31 |
+
<!-- Navigation -->
|
32 |
+
<nav class="navbar navbar-expand-lg navbar-dark gradient-bg">
|
33 |
+
<div class="container">
|
34 |
+
<a class="navbar-brand" href="/">
|
35 |
+
<i class="fas fa-coins gold-accent"></i>
|
36 |
+
Gold Price Predictor
|
37 |
+
</a>
|
38 |
+
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav">
|
39 |
+
<span class="navbar-toggler-icon"></span>
|
40 |
+
</button>
|
41 |
+
<div class="collapse navbar-collapse" id="navbarNav">
|
42 |
+
<ul class="navbar-nav ms-auto">
|
43 |
+
<li class="nav-item">
|
44 |
+
<a class="nav-link" href="/">Home</a>
|
45 |
+
</li>
|
46 |
+
<li class="nav-item">
|
47 |
+
<a class="nav-link active" href="/data-analysis">Data Analysis</a>
|
48 |
+
</li>
|
49 |
+
</ul>
|
50 |
+
</div>
|
51 |
+
</div>
|
52 |
+
</nav>
|
53 |
+
|
54 |
+
<!-- Main Content -->
|
55 |
+
<div class="container my-5">
|
56 |
+
<div class="row mb-4">
|
57 |
+
<div class="col-12">
|
58 |
+
<h1 class="text-center mb-5">
|
59 |
+
<i class="fas fa-chart-bar text-warning"></i>
|
60 |
+
Analisis Data Historis Harga Emas
|
61 |
+
</h1>
|
62 |
+
</div>
|
63 |
+
</div>
|
64 |
+
|
65 |
+
<!-- Statistics Cards -->
|
66 |
+
<div class="row mb-5">
|
67 |
+
<div class="col-md-3 mb-3">
|
68 |
+
<div class="card stat-card text-center">
|
69 |
+
<div class="card-body">
|
70 |
+
<i class="fas fa-database fa-2x text-primary mb-3"></i>
|
71 |
+
<h5 class="card-title">Total Records</h5>
|
72 |
+
<h3 class="text-primary">{{ stats.total_records }}</h3>
|
73 |
+
</div>
|
74 |
+
</div>
|
75 |
+
</div>
|
76 |
+
<div class="col-md-3 mb-3">
|
77 |
+
<div class="card stat-card text-center">
|
78 |
+
<div class="card-body">
|
79 |
+
<i class="fas fa-calendar-alt fa-2x text-info mb-3"></i>
|
80 |
+
<h5 class="card-title">Date Range</h5>
|
81 |
+
<p class="text-info small">{{ stats.date_range }}</p>
|
82 |
+
</div>
|
83 |
+
</div>
|
84 |
+
</div>
|
85 |
+
<div class="col-md-3 mb-3">
|
86 |
+
<div class="card stat-card text-center">
|
87 |
+
<div class="card-body">
|
88 |
+
<i class="fas fa-chart-line fa-2x text-success mb-3"></i>
|
89 |
+
<h5 class="card-title">Avg Close Price</h5>
|
90 |
+
<h4 class="text-success">IDR {{ "{:,.0f}".format(stats.avg_close) }}</h4>
|
91 |
+
</div>
|
92 |
+
</div>
|
93 |
+
</div>
|
94 |
+
<div class="col-md-3 mb-3">
|
95 |
+
<div class="card stat-card text-center">
|
96 |
+
<div class="card-body">
|
97 |
+
<i class="fas fa-chart-area fa-2x text-warning mb-3"></i>
|
98 |
+
<h5 class="card-title">Avg Open Price</h5>
|
99 |
+
<h4 class="text-warning">IDR {{ "{:,.0f}".format(stats.avg_open) }}</h4>
|
100 |
+
</div>
|
101 |
+
</div>
|
102 |
+
</div>
|
103 |
+
</div>
|
104 |
+
|
105 |
+
<!-- Additional Statistics -->
|
106 |
+
<div class="row mb-5">
|
107 |
+
<div class="col-md-4 mb-3">
|
108 |
+
<div class="card stat-card">
|
109 |
+
<div class="card-body text-center">
|
110 |
+
<i class="fas fa-arrow-down fa-2x text-danger mb-3"></i>
|
111 |
+
<h5 class="card-title">Minimum Close Price</h5>
|
112 |
+
<h4 class="text-danger">IDR {{ "{:,.0f}".format(stats.min_close) }}</h4>
|
113 |
+
</div>
|
114 |
+
</div>
|
115 |
+
</div>
|
116 |
+
<div class="col-md-4 mb-3">
|
117 |
+
<div class="card stat-card">
|
118 |
+
<div class="card-body text-center">
|
119 |
+
<i class="fas fa-arrow-up fa-2x text-success mb-3"></i>
|
120 |
+
<h5 class="card-title">Maximum Close Price</h5>
|
121 |
+
<h4 class="text-success">IDR {{ "{:,.0f}".format(stats.max_close) }}</h4>
|
122 |
+
</div>
|
123 |
+
</div>
|
124 |
+
</div>
|
125 |
+
<div class="col-md-4 mb-3">
|
126 |
+
<div class="card stat-card">
|
127 |
+
<div class="card-body text-center">
|
128 |
+
<i class="fas fa-clock fa-2x text-primary mb-3"></i>
|
129 |
+
<h5 class="card-title">Current Price</h5>
|
130 |
+
<h5 class="text-primary">Close: IDR {{ "{:,.0f}".format(stats.current_close) }}</h5>
|
131 |
+
<h5 class="text-info">Open: IDR {{ "{:,.0f}".format(stats.current_open) }}</h5>
|
132 |
+
</div>
|
133 |
+
</div>
|
134 |
+
</div>
|
135 |
+
</div>
|
136 |
+
|
137 |
+
<!-- Historical Chart -->
|
138 |
+
<div class="card stat-card mb-5">
|
139 |
+
<div class="card-header">
|
140 |
+
<h5 class="mb-0">
|
141 |
+
<i class="fas fa-chart-line"></i>
|
142 |
+
Grafik Harga Historis Emas
|
143 |
+
</h5>
|
144 |
+
</div>
|
145 |
+
<div class="card-body text-center">
|
146 |
+
<img src="data:image/png;base64,{{ chart }}" class="img-fluid" alt="Historical Price Chart">
|
147 |
+
</div>
|
148 |
+
</div>
|
149 |
+
|
150 |
+
<!-- Information Cards -->
|
151 |
+
<div class="row">
|
152 |
+
<div class="col-md-6 mb-4">
|
153 |
+
<div class="card stat-card">
|
154 |
+
<div class="card-header">
|
155 |
+
<h5 class="mb-0">
|
156 |
+
<i class="fas fa-info-circle"></i>
|
157 |
+
Tentang Data
|
158 |
+
</h5>
|
159 |
+
</div>
|
160 |
+
<div class="card-body">
|
161 |
+
<ul class="list-unstyled">
|
162 |
+
<li><i class="fas fa-check text-success"></i> Data diperoleh dari API Pluang</li>
|
163 |
+
<li><i class="fas fa-check text-success"></i> Mencakup data historis emas selama 5 tahun</li>
|
164 |
+
<li><i class="fas fa-check text-success"></i> Data telah dibersihkan dan dinormalisasi</li>
|
165 |
+
<li><i class="fas fa-check text-success"></i> Tidak ada data yang hilang (null values)</li>
|
166 |
+
</ul>
|
167 |
+
</div>
|
168 |
+
</div>
|
169 |
+
</div>
|
170 |
+
<div class="col-md-6 mb-4">
|
171 |
+
<div class="card stat-card">
|
172 |
+
<div class="card-header">
|
173 |
+
<h5 class="mb-0">
|
174 |
+
<i class="fas fa-cog"></i>
|
175 |
+
Tentang Model
|
176 |
+
</h5>
|
177 |
+
</div>
|
178 |
+
<div class="card-body">
|
179 |
+
<ul class="list-unstyled">
|
180 |
+
<li><i class="fas fa-check text-success"></i> Algoritma: Linear Regression</li>
|
181 |
+
<li><i class="fas fa-check text-success"></i> Sliding Window: 7 hari</li>
|
182 |
+
<li><i class="fas fa-check text-success"></i> Normalisasi: MinMaxScaler</li>
|
183 |
+
<li><i class="fas fa-check text-success"></i> Train/Test Split: 80/20</li>
|
184 |
+
</ul>
|
185 |
+
</div>
|
186 |
+
</div>
|
187 |
+
</div>
|
188 |
+
</div>
|
189 |
+
|
190 |
+
<!-- Back to Prediction -->
|
191 |
+
<div class="text-center mt-5">
|
192 |
+
<a href="/" class="btn btn-warning btn-lg">
|
193 |
+
<i class="fas fa-arrow-left"></i>
|
194 |
+
Kembali ke Prediksi
|
195 |
+
</a>
|
196 |
+
</div>
|
197 |
+
</div>
|
198 |
+
|
199 |
+
<!-- Footer -->
|
200 |
+
<footer class="gradient-bg text-center py-4 mt-5">
|
201 |
+
<div class="container">
|
202 |
+
<p class="mb-0">© 2025 Kelompok 4 - Sistem Prediksi Harga Emas. Powered by Machine Learning.</p>
|
203 |
+
</div>
|
204 |
+
</footer>
|
205 |
+
|
206 |
+
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"></script>
|
207 |
+
</body>
|
208 |
+
</html>
|
templates/error.html
ADDED
@@ -0,0 +1,61 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<!DOCTYPE html>
|
2 |
+
<html lang="en">
|
3 |
+
<head>
|
4 |
+
<meta charset="UTF-8">
|
5 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
6 |
+
<title>Error - Gold Price Prediction</title>
|
7 |
+
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
|
8 |
+
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" rel="stylesheet">
|
9 |
+
<style>
|
10 |
+
.gradient-bg {
|
11 |
+
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
12 |
+
color: white;
|
13 |
+
}
|
14 |
+
.gold-accent {
|
15 |
+
color: #FFD700;
|
16 |
+
}
|
17 |
+
.navbar-brand {
|
18 |
+
font-weight: bold;
|
19 |
+
}
|
20 |
+
</style>
|
21 |
+
</head>
|
22 |
+
<body>
|
23 |
+
<!-- Navigation -->
|
24 |
+
<nav class="navbar navbar-expand-lg navbar-dark gradient-bg">
|
25 |
+
<div class="container">
|
26 |
+
<a class="navbar-brand" href="/">
|
27 |
+
<i class="fas fa-coins gold-accent"></i>
|
28 |
+
Gold Price Predictor
|
29 |
+
</a>
|
30 |
+
</div>
|
31 |
+
</nav>
|
32 |
+
|
33 |
+
<!-- Error Content -->
|
34 |
+
<div class="container my-5">
|
35 |
+
<div class="row justify-content-center">
|
36 |
+
<div class="col-md-8 text-center">
|
37 |
+
<div class="alert alert-danger" role="alert">
|
38 |
+
<i class="fas fa-exclamation-triangle fa-3x mb-3"></i>
|
39 |
+
<h4 class="alert-heading">Oops! Terjadi Kesalahan</h4>
|
40 |
+
<p>{{ error }}</p>
|
41 |
+
<hr>
|
42 |
+
<p class="mb-0">
|
43 |
+
<a href="/" class="btn btn-primary">
|
44 |
+
<i class="fas fa-home"></i> Kembali ke Beranda
|
45 |
+
</a>
|
46 |
+
</p>
|
47 |
+
</div>
|
48 |
+
</div>
|
49 |
+
</div>
|
50 |
+
</div>
|
51 |
+
|
52 |
+
<!-- Footer -->
|
53 |
+
<footer class="gradient-bg text-center py-4 mt-5 fixed-bottom">
|
54 |
+
<div class="container">
|
55 |
+
<p class="mb-0">© 2025 Kelompok 4 - Sistem Prediksi Harga Emas.</p>
|
56 |
+
</div>
|
57 |
+
</footer>
|
58 |
+
|
59 |
+
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"></script>
|
60 |
+
</body>
|
61 |
+
</html>
|
templates/index.html
ADDED
@@ -0,0 +1,258 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<!DOCTYPE html>
|
2 |
+
<html lang="en">
|
3 |
+
<head>
|
4 |
+
<meta charset="UTF-8">
|
5 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
6 |
+
<title>Gold Price Prediction System</title>
|
7 |
+
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
|
8 |
+
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" rel="stylesheet">
|
9 |
+
<style>
|
10 |
+
.gradient-bg {
|
11 |
+
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
12 |
+
color: white;
|
13 |
+
}
|
14 |
+
.gold-accent {
|
15 |
+
color: #FFD700;
|
16 |
+
}
|
17 |
+
.prediction-card {
|
18 |
+
border: none;
|
19 |
+
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
|
20 |
+
transition: transform 0.3s ease;
|
21 |
+
}
|
22 |
+
.prediction-card:hover {
|
23 |
+
transform: translateY(-5px);
|
24 |
+
}
|
25 |
+
.price-up {
|
26 |
+
color: #28a745;
|
27 |
+
}
|
28 |
+
.price-down {
|
29 |
+
color: #dc3545;
|
30 |
+
}
|
31 |
+
.loading-spinner {
|
32 |
+
display: none;
|
33 |
+
}
|
34 |
+
.navbar-brand {
|
35 |
+
font-weight: bold;
|
36 |
+
}
|
37 |
+
.hero-section {
|
38 |
+
background: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 300"><defs><linearGradient id="grad" x1="0%" y1="0%" x2="100%" y2="100%"><stop offset="0%" style="stop-color:%23FFD700;stop-opacity:0.3" /><stop offset="100%" style="stop-color:%23FFA500;stop-opacity:0.1" /></linearGradient></defs><rect width="1000" height="300" fill="url(%23grad)"/></svg>');
|
39 |
+
color: white;
|
40 |
+
padding: 100px 0;
|
41 |
+
}
|
42 |
+
</style>
|
43 |
+
</head>
|
44 |
+
<body>
|
45 |
+
<!-- Navigation -->
|
46 |
+
<nav class="navbar navbar-expand-lg navbar-dark gradient-bg">
|
47 |
+
<div class="container">
|
48 |
+
<a class="navbar-brand" href="#">
|
49 |
+
<i class="fas fa-coins gold-accent"></i>
|
50 |
+
Gold Price Predictor
|
51 |
+
</a>
|
52 |
+
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav">
|
53 |
+
<span class="navbar-toggler-icon"></span>
|
54 |
+
</button>
|
55 |
+
<div class="collapse navbar-collapse" id="navbarNav">
|
56 |
+
<ul class="navbar-nav ms-auto">
|
57 |
+
<li class="nav-item">
|
58 |
+
<a class="nav-link active" href="/">Home</a>
|
59 |
+
</li>
|
60 |
+
<li class="nav-item">
|
61 |
+
<a class="nav-link" href="/data-analysis">Data Analysis</a>
|
62 |
+
</li>
|
63 |
+
</ul>
|
64 |
+
</div>
|
65 |
+
</div>
|
66 |
+
</nav>
|
67 |
+
|
68 |
+
<!-- Hero Section -->
|
69 |
+
<section class="hero-section text-center">
|
70 |
+
<div class="container">
|
71 |
+
<h1 class="display-4 mb-4">
|
72 |
+
<i class="fas fa-chart-line gold-accent"></i>
|
73 |
+
Prediksi Harga Emas 7 Hari Kedepan
|
74 |
+
</h1>
|
75 |
+
<p class="lead mb-5">Sistem prediksi harga emas menggunakan Machine Learning dengan Linear Regression</p>
|
76 |
+
<button class="btn btn-warning btn-lg" onclick="predictGoldPrice()">
|
77 |
+
<i class="fas fa-magic"></i> Prediksi Sekarang
|
78 |
+
</button>
|
79 |
+
</div>
|
80 |
+
</section>
|
81 |
+
|
82 |
+
<!-- Main Content -->
|
83 |
+
<div class="container my-5">
|
84 |
+
<!-- Loading Spinner -->
|
85 |
+
<div class="text-center loading-spinner" id="loadingSpinner">
|
86 |
+
<div class="spinner-border text-warning" role="status" style="width: 3rem; height: 3rem;">
|
87 |
+
<span class="visually-hidden">Loading...</span>
|
88 |
+
</div>
|
89 |
+
<p class="mt-3">Menganalisis data dan membuat prediksi...</p>
|
90 |
+
</div>
|
91 |
+
|
92 |
+
<!-- Results Section -->
|
93 |
+
<div id="resultsSection" style="display: none;">
|
94 |
+
<!-- Current Prices -->
|
95 |
+
<div class="row mb-4">
|
96 |
+
<div class="col-md-6">
|
97 |
+
<div class="card prediction-card text-center">
|
98 |
+
<div class="card-body">
|
99 |
+
<h5 class="card-title"><i class="fas fa-clock"></i> Harga Saat Ini</h5>
|
100 |
+
<div id="currentPrices"></div>
|
101 |
+
</div>
|
102 |
+
</div>
|
103 |
+
</div>
|
104 |
+
<div class="col-md-6">
|
105 |
+
<div class="card prediction-card text-center">
|
106 |
+
<div class="card-body">
|
107 |
+
<h5 class="card-title"><i class="fas fa-trending-up"></i> Perkiraan Perubahan Total</h5>
|
108 |
+
<div id="totalChanges"></div>
|
109 |
+
</div>
|
110 |
+
</div>
|
111 |
+
</div>
|
112 |
+
</div>
|
113 |
+
|
114 |
+
<!-- Prediction Chart -->
|
115 |
+
<div class="card prediction-card mb-4">
|
116 |
+
<div class="card-header">
|
117 |
+
<h5 class="mb-0"><i class="fas fa-chart-area"></i> Grafik Prediksi Harga Emas</h5>
|
118 |
+
</div>
|
119 |
+
<div class="card-body text-center">
|
120 |
+
<img id="predictionChart" class="img-fluid" alt="Prediction Chart">
|
121 |
+
</div>
|
122 |
+
</div>
|
123 |
+
|
124 |
+
<!-- Predictions Table -->
|
125 |
+
<div class="card prediction-card">
|
126 |
+
<div class="card-header">
|
127 |
+
<h5 class="mb-0"><i class="fas fa-table"></i> Prediksi Harga 7 Hari Kedepan</h5>
|
128 |
+
</div>
|
129 |
+
<div class="card-body">
|
130 |
+
<div class="table-responsive">
|
131 |
+
<table class="table table-striped table-hover">
|
132 |
+
<thead class="table-dark">
|
133 |
+
<tr>
|
134 |
+
<th>Tanggal</th>
|
135 |
+
<th>Harga Tutup (IDR)</th>
|
136 |
+
<th>Perubahan Tutup (%)</th>
|
137 |
+
<th>Harga Buka (IDR)</th>
|
138 |
+
<th>Perubahan Buka (%)</th>
|
139 |
+
</tr>
|
140 |
+
</thead>
|
141 |
+
<tbody id="predictionsTable">
|
142 |
+
</tbody>
|
143 |
+
</table>
|
144 |
+
</div>
|
145 |
+
</div>
|
146 |
+
</div>
|
147 |
+
</div>
|
148 |
+
|
149 |
+
<!-- Error Section -->
|
150 |
+
<div id="errorSection" style="display: none;">
|
151 |
+
<div class="alert alert-danger text-center" role="alert">
|
152 |
+
<i class="fas fa-exclamation-triangle"></i>
|
153 |
+
<span id="errorMessage"></span>
|
154 |
+
</div>
|
155 |
+
</div>
|
156 |
+
</div>
|
157 |
+
|
158 |
+
<!-- Footer -->
|
159 |
+
<footer class="gradient-bg text-center py-4 mt-5">
|
160 |
+
<div class="container">
|
161 |
+
<p class="mb-0">© 2025 Kelompok 4 - Sistem Prediksi Harga Emas. Powered by Machine Learning.</p>
|
162 |
+
</div>
|
163 |
+
</footer>
|
164 |
+
|
165 |
+
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"></script>
|
166 |
+
<script>
|
167 |
+
function predictGoldPrice() {
|
168 |
+
// Show loading spinner
|
169 |
+
document.getElementById('loadingSpinner').style.display = 'block';
|
170 |
+
document.getElementById('resultsSection').style.display = 'none';
|
171 |
+
document.getElementById('errorSection').style.display = 'none';
|
172 |
+
|
173 |
+
// Make API call
|
174 |
+
fetch('/predict', {
|
175 |
+
method: 'POST',
|
176 |
+
headers: {
|
177 |
+
'Content-Type': 'application/json',
|
178 |
+
}
|
179 |
+
})
|
180 |
+
.then(response => response.json())
|
181 |
+
.then(data => {
|
182 |
+
document.getElementById('loadingSpinner').style.display = 'none';
|
183 |
+
|
184 |
+
if (data.success) {
|
185 |
+
displayResults(data);
|
186 |
+
} else {
|
187 |
+
displayError(data.error || 'Unknown error occurred');
|
188 |
+
}
|
189 |
+
})
|
190 |
+
.catch(error => {
|
191 |
+
document.getElementById('loadingSpinner').style.display = 'none';
|
192 |
+
displayError('Network error: ' + error.message);
|
193 |
+
});
|
194 |
+
}
|
195 |
+
|
196 |
+
function displayResults(data) {
|
197 |
+
// Display current prices
|
198 |
+
const currentPricesHtml = `
|
199 |
+
<p class="mb-1"><strong>Harga Tutup:</strong> <span class="gold-accent">IDR ${data.current_prices.close.toLocaleString()}</span></p>
|
200 |
+
<p class="mb-0"><strong>Harga Buka:</strong> <span class="gold-accent">IDR ${data.current_prices.open.toLocaleString()}</span></p>
|
201 |
+
`;
|
202 |
+
document.getElementById('currentPrices').innerHTML = currentPricesHtml;
|
203 |
+
|
204 |
+
// Display total changes
|
205 |
+
const totalChangesHtml = `
|
206 |
+
<p class="mb-1"><strong>Tutup:</strong>
|
207 |
+
<span class="${data.total_changes.close >= 0 ? 'price-up' : 'price-down'}">
|
208 |
+
${data.total_changes.close >= 0 ? '+' : ''}${data.total_changes.close}%
|
209 |
+
<i class="fas fa-arrow-${data.total_changes.close >= 0 ? 'up' : 'down'}"></i>
|
210 |
+
</span>
|
211 |
+
</p>
|
212 |
+
<p class="mb-0"><strong>Buka:</strong>
|
213 |
+
<span class="${data.total_changes.open >= 0 ? 'price-up' : 'price-down'}">
|
214 |
+
${data.total_changes.open >= 0 ? '+' : ''}${data.total_changes.open}%
|
215 |
+
<i class="fas fa-arrow-${data.total_changes.open >= 0 ? 'up' : 'down'}"></i>
|
216 |
+
</span>
|
217 |
+
</p>
|
218 |
+
`;
|
219 |
+
document.getElementById('totalChanges').innerHTML = totalChangesHtml;
|
220 |
+
|
221 |
+
// Display chart
|
222 |
+
document.getElementById('predictionChart').src = 'data:image/png;base64,' + data.chart;
|
223 |
+
|
224 |
+
// Display predictions table
|
225 |
+
let tableHtml = '';
|
226 |
+
data.predictions.forEach(prediction => {
|
227 |
+
tableHtml += `
|
228 |
+
<tr>
|
229 |
+
<td><strong>${prediction.date}</strong></td>
|
230 |
+
<td>IDR ${prediction.close_price.toLocaleString()}</td>
|
231 |
+
<td class="${prediction.close_change >= 0 ? 'price-up' : 'price-down'}">
|
232 |
+
${prediction.close_change >= 0 ? '+' : ''}${prediction.close_change}%
|
233 |
+
<i class="fas fa-arrow-${prediction.close_change >= 0 ? 'up' : 'down'}"></i>
|
234 |
+
</td>
|
235 |
+
<td>IDR ${prediction.open_price.toLocaleString()}</td>
|
236 |
+
<td class="${prediction.open_change >= 0 ? 'price-up' : 'price-down'}">
|
237 |
+
${prediction.open_change >= 0 ? '+' : ''}${prediction.open_change}%
|
238 |
+
<i class="fas fa-arrow-${prediction.open_change >= 0 ? 'up' : 'down'}"></i>
|
239 |
+
</td>
|
240 |
+
</tr>
|
241 |
+
`;
|
242 |
+
});
|
243 |
+
document.getElementById('predictionsTable').innerHTML = tableHtml;
|
244 |
+
|
245 |
+
document.getElementById('resultsSection').style.display = 'block';
|
246 |
+
}
|
247 |
+
|
248 |
+
function displayError(errorMessage) {
|
249 |
+
document.getElementById('errorMessage').textContent = errorMessage;
|
250 |
+
document.getElementById('errorSection').style.display = 'block';
|
251 |
+
}
|
252 |
+
|
253 |
+
function formatNumber(num) {
|
254 |
+
return new Intl.NumberFormat('id-ID').format(num);
|
255 |
+
}
|
256 |
+
</script>
|
257 |
+
</body>
|
258 |
+
</html>
|