I modified an existing efs example and have not been able to get the code when used in a watch list to"
1. Change the color of the watch list bar when the condition is true or
2. Add a sound alert when the condition is true.
If anyone can help with suggestions I am posting the code below:
Thanks for any help in advance:
/************************************************** *******
Alexis C. Montenegro © April 2004
Use and/or modify this code freely. If you redistribute it
please include this and/or any other comment blocks and a
description of any changes you make.
************************************************** ********/
function preMain() {
setPriceStudy(true);
setStudyTitle("X");
var vLastAlert = -1;
var fp1 = new FunctionParameter("Source", FunctionParameter.STRING);
fp1.addOption("close() - sma(50)");
fp1.addOption("");
fp1.setDefault("close() - sma(50)");
var fp2 = new FunctionParameter("Length", FunctionParameter.NUMBER);
fp2.setLowerLimit(1);
fp2.setDefault(135);
}
var aValue = null;
function main(Source,Length) {
var i;
var hh = 0;
var ll = 0;
var vPlot1 = eval(Source);//if using your own study replace eval(Source) with the returned value
//form your study or the expression
if (aValue == null) {
aValue = new Array(Length);
}
if (getBarState() == BARSTATE_NEWBAR) {
aValue.pop();
aValue.unshift(vPlot1);
} else {
aValue[0] = vPlot1;
}
for(i = 0; i < Length; i++) {
if(i == 0) {
hh = aValue[i];
ll = aValue[i];
} else {
hh = Math.max(hh, aValue[i]);
ll = Math.min(ll, aValue[i]);
}
}
if((high() > (hh + sma(50))))
onAction1()
else if((low() < (ll + sma(50))))
onAction2();
return null;
function onAction1() {
setBarBgColor(Color.RGB(0,128,0));
vLastAlert = 1;
}
function onAction2() {
setBarBgColor(Color.RGB(255,0,0));
vLastAlert = 2;
function postMain() {
/**
* The postMain() function is called only once, when the EFS is no longer used for
* the current symbol (ie, symbol change, chart closing, or application shutdown).
*/
}
function onAction1() {
setBarBgColor(Color.RGB(0,128,0));
Alert.playSound("C:\\Users\\HOME\\Documents\\Inter active Data\\Sounds\\Ding.wav");
vLastAlert = 1;
}
function onAction2() {
setBarBgColor(Color.RGB(255,0,0));
Alert.playSound("C:\\Users\\HOME\\Documents\\Inter active Data\\Sounds\\Ding.wav");
vLastAlert = 2;
1. Change the color of the watch list bar when the condition is true or
2. Add a sound alert when the condition is true.
If anyone can help with suggestions I am posting the code below:
Thanks for any help in advance:
/************************************************** *******
Alexis C. Montenegro © April 2004
Use and/or modify this code freely. If you redistribute it
please include this and/or any other comment blocks and a
description of any changes you make.
************************************************** ********/
function preMain() {
setPriceStudy(true);
setStudyTitle("X");
var vLastAlert = -1;
var fp1 = new FunctionParameter("Source", FunctionParameter.STRING);
fp1.addOption("close() - sma(50)");
fp1.addOption("");
fp1.setDefault("close() - sma(50)");
var fp2 = new FunctionParameter("Length", FunctionParameter.NUMBER);
fp2.setLowerLimit(1);
fp2.setDefault(135);
}
var aValue = null;
function main(Source,Length) {
var i;
var hh = 0;
var ll = 0;
var vPlot1 = eval(Source);//if using your own study replace eval(Source) with the returned value
//form your study or the expression
if (aValue == null) {
aValue = new Array(Length);
}
if (getBarState() == BARSTATE_NEWBAR) {
aValue.pop();
aValue.unshift(vPlot1);
} else {
aValue[0] = vPlot1;
}
for(i = 0; i < Length; i++) {
if(i == 0) {
hh = aValue[i];
ll = aValue[i];
} else {
hh = Math.max(hh, aValue[i]);
ll = Math.min(ll, aValue[i]);
}
}
if((high() > (hh + sma(50))))
onAction1()
else if((low() < (ll + sma(50))))
onAction2();
return null;
function onAction1() {
setBarBgColor(Color.RGB(0,128,0));
vLastAlert = 1;
}
function onAction2() {
setBarBgColor(Color.RGB(255,0,0));
vLastAlert = 2;
function postMain() {
/**
* The postMain() function is called only once, when the EFS is no longer used for
* the current symbol (ie, symbol change, chart closing, or application shutdown).
*/
}
function onAction1() {
setBarBgColor(Color.RGB(0,128,0));
Alert.playSound("C:\\Users\\HOME\\Documents\\Inter active Data\\Sounds\\Ding.wav");
vLastAlert = 1;
}
function onAction2() {
setBarBgColor(Color.RGB(255,0,0));
Alert.playSound("C:\\Users\\HOME\\Documents\\Inter active Data\\Sounds\\Ding.wav");
vLastAlert = 2;
Comment