bar inconsistent messages

This commit is contained in:
7400
2024-03-19 18:29:11 -07:00
parent 39c91f8611
commit 56901584b1

View File

@@ -191,20 +191,7 @@ export function lookupBaseQuote(baseAddr, quoteAddr) {
} }
function poolIsInverted(pool) { function poolIsInverted(pool) {
const chainId = useStore().chainId.value return useChartOrderStore().selectedSymbol.inverted
let p
for (p of metadata[chainId].p) {
if (p.a===pool.substr(0,42)) {
let fullname = `${p.q}${p.b}`
let symbol = lookupSymbol(fullname)
if (symbol in [undefined, null]) {
throw Error(`poolIsInverted: pool fullname not found: ${fullname}`)
}
return symbol.inverted
// return p.x.data.inverted ^ symbol.inverted
}
}
throw Error(`poolIsInverted: pool not found in metadata.json: ${pool}`)
} }
export function maybeInvertBar (pool, bar) { export function maybeInvertBar (pool, bar) {
@@ -214,16 +201,32 @@ export function maybeInvertBar (pool, bar) {
bar.high = 1/bar.low bar.high = 1/bar.low
bar.low = 1/high bar.low = 1/high
bar.close = 1/bar.close bar.close = 1/bar.close
console.log("bar inverted")
} else {
console.log("bar NOT inverted")
} }
return bar return bar
} }
function checkBar(bar, msg) { function checkBar(bar, msg) {
if (bar.high<bar.open||bar.high<bar.low||bar.high<bar.close ||
bar.low>bar.open||bar.low>bar.high||bar.low>bar.close) { // Everything should be positive
// throw error("poolCallback: bar.high/low inconsistent.")
console.log(msg, "bar.high/low inconsistent:", bar) let o_l = bar.open - bar.low
} let c_l = bar.close - bar.low
let h_o = bar.high - bar.open
let h_c = bar.high - bar.close
let h_l = bar.high - bar.low
if (o_l<0||c_l||h_o<0||h_c<0||h_l<0) {
console.log(msg, "bar.high/low inconsistent:", bar)
}
if (o_l<0) console.log("bar inconsistent: open-low: ", o_l)
if (c_l<0) console.log("bar inconsistent: close-low: ", c_l)
if (h_o<0) console.log("bar inconsistent: high-open: ", h_o)
if (h_c<0) console.log("bar inconsistent: high-close:", h_c)
if (h_l<0) console.log("bar inconsistent: high-low: ", h_l)
} }
export const DataFeed = { export const DataFeed = {
@@ -335,15 +338,6 @@ export const DataFeed = {
subscriptions[subscriberUID] = [chainId, poolAddr, period] subscriptions[subscriberUID] = [chainId, poolAddr, period]
DataFeed.subscribeBarsOnRealtimeCallback = onRealtimeCallback; DataFeed.subscribeBarsOnRealtimeCallback = onRealtimeCallback;
subOHLC(chainId, poolAddr, period) subOHLC(chainId, poolAddr, period)
// return; // disable
// subscribeOnStream(
// symbolInfo,
// resolution,
// onRealtimeCallback,
// subscriberUID,
// onResetCacheNeededCallback,
// lastBarsCache.get(symbolInfo.full_name),
// );
}, },
unsubscribeBars: (subscriberUID) => { unsubscribeBars: (subscriberUID) => {
@@ -351,13 +345,12 @@ export const DataFeed = {
const [chainId, poolAddr, period] = subscriptions[subscriberUID] const [chainId, poolAddr, period] = subscriptions[subscriberUID]
delete subscriptions[subscriberUID] delete subscriptions[subscriberUID]
unsubOHLC(chainId, poolAddr, period) unsubOHLC(chainId, poolAddr, period)
// return; // disable
// unsubscribeFromStream(subscriberUID);
}, },
poolCallbackState : {lastBar: null}, poolCallbackState : {lastBar: null},
poolCallback(chainId, pool, ohlcs) { poolCallback(chainId, pool, ohlcs) {
console.log("poolCallback: chainId, pool:", chainId, pool)
let ohlc = ohlcs.at(-1); let ohlc = ohlcs.at(-1);
// for (const ohlc of ohlcs) { // for (const ohlc of ohlcs) {
let date = new Date(ohlc[0]*1000) let date = new Date(ohlc[0]*1000)
@@ -386,6 +379,7 @@ export const DataFeed = {
} }
// new bar, then render and replace last bar // new bar, then render and replace last bar
else { else {
console.log('DataFeed.poolCallback, open=', bar.open, "inverted", poolIsInverted(pool), "pool", pool)
DataFeed.subscribeBarsOnRealtimeCallback(bar) DataFeed.subscribeBarsOnRealtimeCallback(bar)
DataFeed.poolCallbackState.lastBar = bar DataFeed.poolCallbackState.lastBar = bar
} }