Skip to content

Watchlist

Summary

Represents the Watchlist interface.

Signature

1
public abstract interface Watchlist

Namespace

cAlgo.API

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
 using cAlgo.API;
 using System.Linq;
 namespace cAlgo
 {
     // This sample shows how to use Automate API to monitor user platform Watchlists
     [Indicator(IsOverlay = true, TimeZone = TimeZones.UTC, AccessRights = AccessRights.None)]
     public class Test : Indicator
     {
         protected override void Initialize()
         {
             Watchlists.Added += OnWatchlistAdded;
             Watchlists.Removed += OnWatchlistRemoved;
             Watchlists.WatchlistRenamed += OnWatchlistRenamed;
             Watchlists.WatchlistSymbolAdded += OnWatchlistSymbolAdded;
             Watchlists.WatchlistSymbolRemoved += OnWatchlistSymbolRemoved;
             Print("Number of Watchlists: ", Watchlists.Count());
             foreach (var watchlist in Watchlists)
             {
                 Print("Watchlist Name: {0} | Symbols #: {1}", watchlist.Name, watchlist.SymbolNames.Count);
             }
         }
         private void OnWatchlistSymbolRemoved(WatchlistSymbolRemovedEventArgs obj)
         {
             Print("Symbol {0} Removed From Watchlist {1}", obj.SymbolName, obj.Watchlist.Name);
         }
         private void OnWatchlistSymbolAdded(WatchlistSymbolAddedEventArgs obj)
         {
             Print("Symbol {0} Added to Watchlist {1}", obj.SymbolName, obj.Watchlist.Name);
         }
         private void OnWatchlistRenamed(WatchlistRenamedEventArgs obj)
         {
             Print("Renamed Watchlist {0}", obj.Watchlist.Name);
         }
         private void OnWatchlistRemoved(WatchlistRemovedEventArgs obj)
         {
             Print("Removed Watchlist {0}", obj.Watchlist.Name);
         }
         private void OnWatchlistAdded(WatchlistAddedEventArgs obj)
         {
             Print("Added Watchlist {0}", obj.Watchlist.Name);
         }
         public override void Calculate(int index)
         {
         }
     }
 }
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 import clr
 clr.AddReference("cAlgo.API")
 from cAlgo.API import *
 class Test():
     def initialize(self):
         api.Watchlists.Removed += self.on_watchlist_removed
         api.Watchlists.WatchlistRenamed += self.on_watchlist_renamed
         api.Watchlists.Added += self.on_watchlist_added
         api.Watchlists.WatchlistSymbolAdded += self.on_watchlist_symbol_added
         api.Watchlists.WatchlistSymbolRemoved += self.on_watchlist_symbol_removed
         api.Print(f"Number of Watchlists: {len(list(api.Watchlists))}")
         for watchlist in api.Watchlists:
             api.Print(f"Watchlist Name: {watchlist.Name} | Symbols #: {watchlist.SymbolNames.Count}")
     def on_watchlist_added(self, args):
         api.Print(f"Watchlist '{args.Watchlist.Name}' has been added")
     def on_watchlist_renamed(self, args):
         api.Print(f"Watchlist renamed to {args.Watchlist.Name}")
     def on_watchlist_removed(self, args):
         api.Print(f"Watchlist '{args.Watchlist.Name}' has been removed")        
     def on_watchlist_symbol_added(self, args):
         api.Print(f"Symbol {args.SymbolName} Added to Watchlist {args.Watchlist.Name}")
     def on_watchlist_symbol_removed(self, args):
         api.Print(f"Symbol {args.SymbolName} removed from watchlist {args.Watchlist.Name}")

Properties

Name

Summary

Gets the watchlist name.

Signature

1
public abstract string Name {get;}

Return Value

string

SymbolNames

Summary

Gets the names of the symbols in the watchlist.

Signature

1
public abstract IReadonlyList<string> SymbolNames {get;}

Return Value

IReadonlyList