frequi_origin/src/components/ftbot/DailyStats.vue

56 lines
1.6 KiB
Vue
Raw Normal View History

2020-05-17 18:43:19 +00:00
<template>
2020-05-22 18:04:27 +00:00
<div>
<div class="mb-2">
<label class="mr-auto h3">Daily Stats</label>
2020-07-02 18:05:20 +00:00
<b-button class="float-right" size="sm" @click="getDaily">&#x21bb;</b-button>
</div>
2020-05-22 18:04:27 +00:00
<div>
2020-08-31 15:43:44 +00:00
<DailyChart v-if="dailyStats.data" :daily-stats="dailyStats" />
</div>
2020-06-11 18:24:17 +00:00
<div>
<b-table class="table-sm" :items="dailyStats.data" :fields="dailyFields"> </b-table>
2020-06-11 18:24:17 +00:00
</div>
2020-05-17 18:43:19 +00:00
</div>
</template>
2020-10-25 09:35:19 +00:00
<script lang="ts">
2022-04-17 08:01:15 +00:00
import { defineComponent, computed, onMounted } from '@vue/composition-api';
import DailyChart from '@/components/charts/DailyChart.vue';
2021-02-03 06:53:38 +00:00
import { formatPrice } from '@/shared/formatters';
2021-09-18 17:45:26 +00:00
import { BotStoreGetters } from '@/store/modules/ftbot';
import StoreModules from '@/store/storeSubModules';
2022-04-17 08:01:15 +00:00
import { useNamespacedActions, useNamespacedGetters } from 'vuex-composition-helpers';
2020-05-17 18:43:19 +00:00
2022-04-17 08:01:15 +00:00
export default defineComponent({
2020-05-17 18:43:19 +00:00
name: 'DailyStats',
2020-06-11 18:24:17 +00:00
components: {
DailyChart,
2020-06-11 18:24:17 +00:00
},
2022-04-17 08:01:15 +00:00
setup() {
const { dailyStats } = useNamespacedGetters(StoreModules.ftbot, [BotStoreGetters.dailyStats]);
const { getDaily } = useNamespacedActions(StoreModules.ftbot, ['getDaily']);
const dailyFields = computed(() => {
2020-05-17 18:43:19 +00:00
return [
{ key: 'date', label: 'Day' },
2021-02-03 06:53:38 +00:00
{ key: 'abs_profit', label: 'Profit', formatter: (value) => formatPrice(value) },
{
key: 'fiat_value',
2022-04-17 08:01:15 +00:00
label: `In ${dailyStats.value.fiat_display_currency}`,
2021-02-03 06:53:38 +00:00
formatter: (value) => formatPrice(value, 2),
},
2020-05-17 18:43:19 +00:00
{ key: 'trade_count', label: 'Trades' },
];
2022-04-17 08:01:15 +00:00
});
onMounted(() => {
getDaily();
});
return {
getDaily,
dailyFields,
dailyStats,
};
2020-09-04 15:08:02 +00:00
},
2020-10-25 09:35:19 +00:00
});
2020-05-17 18:43:19 +00:00
</script>