Library "cache"
A simple cache library to store key value pairs.

  • Fed up of injecting and returning so many values all the time?
  • Want to separate your code and keep it clean?
  • Need to make an expensive calculation and use the results in numerous places?
  • Want to throttle calculations or persist random values across bars or ticks?

Then you've come to the right place. Or not! Up to you, I don't mind either way... ;)

Check the helpers and unit tests in the script for further detail.

Detailed Interface

init(persistant) Initialises the syncronised cache key and value arrays
  Parameters:
    persistant: bool, toggles data persistance between bars and ticks
  Returns: [string, float], a tuple of both arrays

set(keys, values, key, value) Sets a value into the cache
  Parameters:
    keys: string, the array of cache keys
    values: float, the array of cache values
    key: string, the cache key to create or update
    value: float, the value to set

has(keys, values, key) Checks if the cache has a key
  Parameters:
    keys: string, the array of cache keys
    values: float, the array of cache values
    key: string, the cache key to check
  Returns: bool, true only if the key is found

get(keys, values, key) Gets a keys value from the cache
  Parameters:
    keys: string, the array of cache keys
    values: float, the array of cache values
    key: string, the cache key to get
  Returns: float, the stored value

remove(keys, values, key) Removes a key and value from the cache
  Parameters:
    keys: string, the array of cache keys
    values: float, the array of cache values
    key: string, the cache key to remove

count() Counts how many key value pairs in the cache
  Returns: int, the total number of pairs

loop(keys, values) Returns true for each value in the cache (use as the while loop expression)
  Parameters:
    keys: string, the array of cache keys
    values: float, the array of cache values

next(keys, values) Returns each key value pair on successive calls (use in the while loop)
  Parameters:
    keys: string, the array of cache keys
    values: float, the array of cache values
  Returns: , tuple of each key value pair

clear(keys, values) Clears all key value pairs from the cache
  Parameters:
    keys: string, the array of cache keys
    values: float, the array of cache values

unittest_cache(case) Cache module unit tests, for inclusion in parent script test suite. Usage: log.unittest_cache(__ASSERTS)
  Parameters:
    case: string, the current test case and array of previous unit tests (__ASSERTS)

unittest(verbose) Run the cache module unit tests as a stand alone. Usage: cache.unittest()
  Parameters:
    verbose: bool, optionally disable the full report to only display failures
Pine Bibliothek

In echter TradingView-Manier hat der Autor diesen Pine-Code als Open-Source-Bibliothek veröffentlicht, so dass andere Pine-Programmierer aus unserer Community ihn weiterverwenden können. Ein Hoch auf den Autor! Sie können diese Bibliothek privat oder in anderen Open-Source-Publikationen verwenden, aber die Wiederverwendung dieses Codes in einer Publikation unterliegt den Hausregeln.

Haftungsausschluss

Die Informationen und Veröffentlichungen sind nicht als Finanz-, Anlage-, Handels- oder andere Arten von Ratschlägen oder Empfehlungen gedacht, die von TradingView bereitgestellt oder gebilligt werden, und stellen diese nicht dar. Lesen Sie mehr in den Nutzungsbedingungen.

Möchten Sie diese Bibliothek nutzen?

Kopieren Sie die folgende Zeile und fügen Sie sie in Ihr Skript ein.