What causes me problems to replicate is the issue that you have empty cells when a stock is not a member of the sector. In my script I get for the stocks that are not members of a sector the value “0.00”.
I tried the following script to get empty cells for non-members but failed:
Hi Thomas - there’s a bit of a trick in the formatting of the columns. The script is simply WEIGHT(SYMBOLLIST=QQQ - Invesco QQQ Trust) and once added right-click on the column header and change the Column Type to Percentage. Under Custom Labels put a blank space for the label and set ==0 to white:
A really nice trick with the blank space for the label. I have worked with the Custom Labels property but the idea of the blank space did not occur to me.
Perhaps a small improvement:
If you choose the colour black instead of white, the default row colour formatting in the watchlist is maintained.
How did you script the horizontal dotted line corresponding to the current last value to go back only to the last occurrence that also corresponds to the current last value?
Since +1% move in a Show View with Plot Style set to Dot:
C1 = CHANGE() >1;
TIMESINCESIGNAL(C1)
Since -1% move in another Show View:
C1 = CHANGE() <-1;
TIMESINCESIGNAL(C1)
Drag the bottom Show View layer into the first Show View using the Structure Panel and rename the layers:
The bottom is similar with 2 Show Views counting the yearly totals. The formula for the number of +1% days using the ACCSINCESIGNAL() function when the YEARNUM() changes:
Can you please publish here in the forum the workbook you have shown on Twitter (https://twitter.com/Optuma/status/1702083087956648304) or at least the scripts to count the days an item is making a relative high or low.
Use the following to count how long since the RIC() value was this high:
D1=RIC();
TIMESINCESIGNAL(D1>LAST(D1), Unit=Bars)
Change the variable D1 to use any other indicator, eg Close, RSI, Volume. Change the sign in the TIMESINCESIGNAL function to find the low, eg today was the lowest volume in 13 days for TSLA (since August 25th). To show the date (change the Column Type to Date):
I was trying to recreate your signal on Nov - Dec results when the spx is under 200ma at the end of October… I got close results to yours, but different; curious what script you used? Here is what I did below and my screenshot is attached vs yours
//Start signal - enter trade at the close of last day of October
a1 = MONTHNUM() ChangeTo 11;
a2 = OFFSET(a1, OFFSET=-1);
//Close is below 200ma
b1 = MA(BARS=200, CALC=Close);
b2 = CLOSE() < b1;
a2 and b2
Jeff - This was a Trade Test (change the Test Mode from Signal) which requires the following Exit criteria for the end of the year or 43 days, whichever occurs first:
V1=MONTHNUM() ChangeTo 1;
V1[-1]
Thomas - this was also a Trade Test using the same exit criteria as above, and this as the entry:
V1=MONTHNUM() ChangeTo 11;
V2=V1 and MONTH()[1] IsDown and MONTH()[2] IsDown and MONTH()[3] IsDown;
V2[-1]
For the Signal Test I just hard-coded those dates using the following:
BARDATE()==STRDATE(DATE=1981-08-03) or
BARDATE()==STRDATE(DATE=1984-08-30) or
BARDATE()==STRDATE(DATE=1989-06-05) or
BARDATE()==STRDATE(DATE=1995-07-05) or
BARDATE()==STRDATE(DATE=1998-09-29) or
BARDATE()==STRDATE(DATE=2001-01-03) or
BARDATE()==STRDATE(DATE=2007-09-18) or
BARDATE()==STRDATE(DATE=2019-07-30)
The GoNoGo tools used to calculate the data are an optional add-on module for $125 a month. To learn more see here:
To build the statistics on the % of members with a Go status also requires the Custom Breadth module, which is available with Enterprise Services, or another tool module purchase:
Please contact support if you would like to purchase these modules.