Release v19.029 (from 40dd8ca8)
Fixes tradingview/charting_library#614 Fixes tradingview/charting_library#2701 Fixes tradingview/charting_library#2858 Fixes tradingview/charting_library#4019 Fixes tradingview/charting_library#4056 Fixes tradingview/charting_library#4116 Fixes tradingview/charting_library#4473 Fixes tradingview/charting_library#4674 Fixes tradingview/charting_library#4742 Fixes tradingview/charting_library#4746 Fixes tradingview/charting_library#4764 Fixes tradingview/charting_library#4769 Fixes tradingview/charting_library#4986 Fixes tradingview/charting_library#5022 Fixes tradingview/charting_library#5082 Fixes tradingview/charting_library#5228 Fixes tradingview/charting_library#5305 Fixes tradingview/charting_library#5312 Fixes tradingview/charting_library#5354 Fixes tradingview/charting_library#5397 Fixes tradingview/charting_library#5410 Fixes tradingview/charting_library#5429 Fixes tradingview/charting_library#5433 Fixes tradingview/charting_library#5455 Fixes tradingview/charting_library#5466 Fixes tradingview/charting_library#5470 Fixes tradingview/charting_library#5486 Fixes tradingview/charting_library#5488 Fixes tradingview/charting_library#5491 Fixes tradingview/charting_library#5494 Fixes tradingview/charting_library#5531 Fixes tradingview/charting_library#5557 Fixes tradingview/charting_library#5581 Fixes tradingview/charting_library#5598 Fixes tradingview/charting_library#5611 Fixes tradingview/charting_library#5638 Fixes tradingview/charting_library#5706
This commit is contained in:
@@ -84,7 +84,15 @@ export class DataPulseProvider {
|
||||
// see the explanation below. `10` is the `large enough` value to work around holidays
|
||||
const rangeStartTime = rangeEndTime - periodLengthSeconds(subscriptionRecord.resolution, 10);
|
||||
|
||||
return this._historyProvider.getBars(subscriptionRecord.symbolInfo, subscriptionRecord.resolution, rangeStartTime, rangeEndTime)
|
||||
return this._historyProvider.getBars(
|
||||
subscriptionRecord.symbolInfo,
|
||||
subscriptionRecord.resolution,
|
||||
{
|
||||
from: rangeStartTime,
|
||||
to: rangeEndTime,
|
||||
countBack: 2,
|
||||
firstDataRequest: false,
|
||||
})
|
||||
.then((result: GetBarsResult) => {
|
||||
this._onSubscriberDataReceived(listenerGuid, result);
|
||||
});
|
||||
|
||||
@@ -2,6 +2,7 @@ import {
|
||||
Bar,
|
||||
HistoryMetadata,
|
||||
LibrarySymbolInfo,
|
||||
PeriodParams,
|
||||
} from '../../../charting_library/datafeed-api';
|
||||
|
||||
import {
|
||||
@@ -39,6 +40,8 @@ interface HistoryNoDataResponse extends UdfResponse {
|
||||
|
||||
type HistoryResponse = HistoryFullDataResponse | HistoryPartialDataResponse | HistoryNoDataResponse;
|
||||
|
||||
export type PeriodParamsWithOptionalCountback = Omit<PeriodParams, 'countBack'> & { countBack?: number };
|
||||
|
||||
export interface GetBarsResult {
|
||||
bars: Bar[];
|
||||
meta: HistoryMetadata;
|
||||
@@ -53,13 +56,16 @@ export class HistoryProvider {
|
||||
this._requester = requester;
|
||||
}
|
||||
|
||||
public getBars(symbolInfo: LibrarySymbolInfo, resolution: string, rangeStartDate: number, rangeEndDate: number): Promise<GetBarsResult> {
|
||||
public getBars(symbolInfo: LibrarySymbolInfo, resolution: string, periodParams: PeriodParamsWithOptionalCountback): Promise<GetBarsResult> {
|
||||
const requestParams: RequestParams = {
|
||||
symbol: symbolInfo.ticker || '',
|
||||
resolution: resolution,
|
||||
from: rangeStartDate,
|
||||
to: rangeEndDate,
|
||||
from: periodParams.from,
|
||||
to: periodParams.to,
|
||||
};
|
||||
if (periodParams.countBack !== undefined) {
|
||||
requestParams.countback = periodParams.countBack;
|
||||
}
|
||||
|
||||
if (symbolInfo.currency_code !== undefined) {
|
||||
requestParams.currencyCode = symbolInfo.currency_code;
|
||||
|
||||
@@ -37,8 +37,6 @@ interface ExchangeDataResponseSymbolData {
|
||||
'minmov'?: number;
|
||||
'minmovement'?: number;
|
||||
|
||||
'force-session-rebuild'?: boolean;
|
||||
|
||||
'supported-resolutions'?: ResolutionString[];
|
||||
'intraday-multipliers'?: string[];
|
||||
|
||||
@@ -259,7 +257,6 @@ export class SymbolsStorage {
|
||||
session: extractField(data, 'session-regular', symbolIndex),
|
||||
timezone: extractField(data, 'timezone', symbolIndex),
|
||||
supported_resolutions: definedValueOrDefault(extractField(data, 'supported-resolutions', symbolIndex, true), this._datafeedSupportedResolutions),
|
||||
force_session_rebuild: extractField(data, 'force-session-rebuild', symbolIndex),
|
||||
has_daily: definedValueOrDefault(extractField(data, 'has-daily', symbolIndex), true),
|
||||
intraday_multipliers: definedValueOrDefault(extractField(data, 'intraday-multipliers', symbolIndex, true), ['1', '5', '15', '30', '60']),
|
||||
has_weekly_and_monthly: extractField(data, 'has-weekly-and-monthly', symbolIndex),
|
||||
|
||||
@@ -3,7 +3,6 @@ import {
|
||||
ErrorCallback,
|
||||
GetMarksCallback,
|
||||
HistoryCallback,
|
||||
HistoryDepth,
|
||||
IDatafeedChartApi,
|
||||
IDatafeedQuotesApi,
|
||||
IExternalDatafeed,
|
||||
@@ -11,7 +10,6 @@ import {
|
||||
Mark,
|
||||
OnReadyCallback,
|
||||
QuotesCallback,
|
||||
ResolutionBackValues,
|
||||
ResolutionString,
|
||||
ResolveCallback,
|
||||
SearchSymbolResultItem,
|
||||
@@ -32,6 +30,7 @@ import {
|
||||
import {
|
||||
GetBarsResult,
|
||||
HistoryProvider,
|
||||
PeriodParamsWithOptionalCountback,
|
||||
} from './history-provider';
|
||||
|
||||
import { IQuotesProvider } from './iquotes-provider';
|
||||
@@ -132,10 +131,6 @@ export class UDFCompatibleDatafeedBase implements IExternalDatafeed, IDatafeedQu
|
||||
this._quotesPulseProvider.unsubscribeQuotes(listenerGuid);
|
||||
}
|
||||
|
||||
public calculateHistoryDepth(resolution: ResolutionString, resolutionBack: ResolutionBackValues, intervalBack: number): HistoryDepth | undefined {
|
||||
return undefined;
|
||||
}
|
||||
|
||||
public getMarks(symbolInfo: LibrarySymbolInfo, from: number, to: number, onDataCallback: GetMarksCallback<Mark>, resolution: ResolutionString): void {
|
||||
if (!this._configuration.supports_marks) {
|
||||
return;
|
||||
@@ -303,8 +298,8 @@ export class UDFCompatibleDatafeedBase implements IExternalDatafeed, IDatafeedQu
|
||||
}
|
||||
}
|
||||
|
||||
public getBars(symbolInfo: LibrarySymbolInfo, resolution: ResolutionString, rangeStartDate: number, rangeEndDate: number, onResult: HistoryCallback, onError: ErrorCallback): void {
|
||||
this._historyProvider.getBars(symbolInfo, resolution, rangeStartDate, rangeEndDate)
|
||||
public getBars(symbolInfo: LibrarySymbolInfo, resolution: ResolutionString, periodParams: PeriodParamsWithOptionalCountback, onResult: HistoryCallback, onError: ErrorCallback): void {
|
||||
this._historyProvider.getBars(symbolInfo, resolution, periodParams)
|
||||
.then((result: GetBarsResult) => {
|
||||
onResult(result.bars, result.meta);
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user