JForex
- adamkaluza
- Pasjonat
- Posty: 1021
- Rejestracja: 16 kwie 2011, 11:59
Re: JForex
Jak włączyć powiadomienia push? Dałem subskrybuj i pisze - Po włączeniu powiadomień push na urządzeniu, będziesz je otrzymywać bezpłatnie. Powiadomienia na urządzeniu mam włączone, ale w ustawieniach powiadomień nie mogę zaznaczyć push bo jest nie aktywne, tylko e-mail jest aktywne.
Każdy interwał ma swojego sponsora
Re: JForex
A masz włączone "Wysyłaj powiadomienia handlowe, gdy jestem offline"?adamkaluza pisze: ↑08 gru 2020, 21:21Jak włączyć powiadomienia push? Dałem subskrybuj i pisze - Po włączeniu powiadomień push na urządzeniu, będziesz je otrzymywać bezpłatnie. Powiadomienia na urządzeniu mam włączone, ale w ustawieniach powiadomień nie mogę zaznaczyć push bo jest nie aktywne, tylko e-mail jest aktywne.
Sprawdź też w ustawieniach aplikacji w systemie (na iOS Ustawienia Powiadomienia JForex / na Androidzie nie wiem ).
ForexClub.pl
- Forex Club Tools
- Program Podatek 7.0
- RABATY PROWIZJI
| IC Markets (-21%) | Tickmill (-10%) | XTB (Pakiet książek) | Dukascopy (narzędzia do JForex) | LMAX (-20%) | FxPro (do -15%)
Zapraszamy do kontaktu
- Forex Club Tools
- Program Podatek 7.0
- RABATY PROWIZJI
| IC Markets (-21%) | Tickmill (-10%) | XTB (Pakiet książek) | Dukascopy (narzędzia do JForex) | LMAX (-20%) | FxPro (do -15%)
Zapraszamy do kontaktu
- adamkaluza
- Pasjonat
- Posty: 1021
- Rejestracja: 16 kwie 2011, 11:59
Re: JForex
Te dwie rzeczy mam włączone.
I dalej pisze że muszę włączyć powiadomienia, a w ustawieniach powiadomień mam aktywne że mogę dać e-mail push nie da się zaznaczyć.
Nie wiem co jeszcze sprawdzić? Działają komuś te powiadomienia?Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
Każdy interwał ma swojego sponsora
Re: JForex
No to problemem jest brak możliwości zaznaczenia PUSH. Ale czemu tak jest... najlepiej napisz bezpośrednio do swojego account managera.
ForexClub.pl
- Forex Club Tools
- Program Podatek 7.0
- RABATY PROWIZJI
| IC Markets (-21%) | Tickmill (-10%) | XTB (Pakiet książek) | Dukascopy (narzędzia do JForex) | LMAX (-20%) | FxPro (do -15%)
Zapraszamy do kontaktu
- Forex Club Tools
- Program Podatek 7.0
- RABATY PROWIZJI
| IC Markets (-21%) | Tickmill (-10%) | XTB (Pakiet książek) | Dukascopy (narzędzia do JForex) | LMAX (-20%) | FxPro (do -15%)
Zapraszamy do kontaktu
-
- Fanatyk
- Posty: 14967
- Rejestracja: 29 paź 2012, 09:52
Re: JForex
Czy jest możliwość dodania do wykresu swojego znaku wodnego
Re: JForex
Nie ma takiej możliwości (w standardzie).
ForexClub.pl
- Forex Club Tools
- Program Podatek 7.0
- RABATY PROWIZJI
| IC Markets (-21%) | Tickmill (-10%) | XTB (Pakiet książek) | Dukascopy (narzędzia do JForex) | LMAX (-20%) | FxPro (do -15%)
Zapraszamy do kontaktu
- Forex Club Tools
- Program Podatek 7.0
- RABATY PROWIZJI
| IC Markets (-21%) | Tickmill (-10%) | XTB (Pakiet książek) | Dukascopy (narzędzia do JForex) | LMAX (-20%) | FxPro (do -15%)
Zapraszamy do kontaktu
Re: JForex
Hmm, z tego co widzę można to ogarnąć. Pewnie ktoś kto lepiej zna javę zrobi to lepiej, ale z tego co widzę można przygotować obrazek z tłem przezroczystym (transparency) w jakimś programie graficznym który daje możliwość wypełnienia tła w ten sposób, jak na przykładowym obrazku niżej który jest w załączniku. Akurat ja mam ścieżki w linuxie w ten sposób /tmp/obrazek.png na windowsie, chyba robi się dwa backslashe np c://Documents//users//admin//Photo//img.png" albo w drugą stronę backslashe \\ . Idea jest taka że można na widget panelu (https://www.dukascopy.com/wiki/en/devel ... art-widget) rysować, dodawać obiekty ze javax.swing. Na wiki jest też przykład jak zapisać obrazek (https://www.dukascopy.com/wiki/en/devel ... operations) . A korzystając z tego tricku (https://stackoverflow.com/questions/231 ... two-images) można połączyć 2 obrazki ze sobą i zapisać. Czyli uruchamiasz strategię, akurat tutaj potrzebny jest wykres EURUSD i pojawia się widget, zapisuje pod adresem z lini 75 i strategia zatrzymuje się bo na końcu jest context.stop(); I masz zapisany obrazek ze znakiem wodnym.
Można zmienić domyślne ustawienie widgetu, ale trzeba by poeksperymentować z tym. Te linie zmianiają położenie ale coś nie działało u mnie jak trzeba dlatego zakomentowałem, ale to jest chyba tutaj, i robisz przesunięcie względem szerokości i wysokości ekranu.
//obj.setPosX(new Double(screenSize.getWidth()-600).intValue());
//obj.setPosY(new Double(screenSize.getHeight()-600).intValue());
I wygląda to tak
Tutaj jest kod z pętlą for (IChart chart : context.getCharts()) , żeby dodało na wszytkie otwarte wykresy. I tworzy kilka plików wtedy z obrazkami.
A przezroczystość widgetu zmienia się dodając obj.setFillOpacity(0f) jak wyżej. A żeby przesunąć od razu np w prawy dolny róg to trzeba zmienić tutaj gdzie są te 2 linie obj.setPosX(0.7f); obj.setPosY(0.5f); . Jak komuś się chce to może w tym podłubać i to ogarnąć.
Można zmienić domyślne ustawienie widgetu, ale trzeba by poeksperymentować z tym. Te linie zmianiają położenie ale coś nie działało u mnie jak trzeba dlatego zakomentowałem, ale to jest chyba tutaj, i robisz przesunięcie względem szerokości i wysokości ekranu.
//obj.setPosX(new Double(screenSize.getWidth()-600).intValue());
//obj.setPosY(new Double(screenSize.getHeight()-600).intValue());
Kod: Zaznacz cały
package jforex;
import java.util.*;
import com.dukascopy.api.*;
import javax.imageio.ImageIO;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JLabel;
import javax.swing.WindowConstants;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.Dimension;
import java.awt.Color;
import java.awt.*;
import javax.swing.*;
import java.lang.Object.*;
import com.dukascopy.api.drawings.ICustomWidgetChartObject;
public class Strategy_11012021_xd implements IStrategy {
private IEngine engine;
private IConsole console;
private IHistory history;
private IContext context;
private IIndicators indicators;
private IUserInterface userInterface;
private IChart chart;
JFrame f = null;
ICustomWidgetChartObject obj = null;
public void onStart(IContext context) throws JFException {
this.engine = context.getEngine();
this.console = context.getConsole();
this.history = context.getHistory();
this.context = context;
this.indicators = context.getIndicators();
this.userInterface = context.getUserInterface();
this.chart = context.getChart(Instrument.EURUSD);
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
obj = chart.getChartObjectFactory().createChartWidget();
JPanel panel = obj.getContentPanel();
panel.setLayout(null);
BufferedImage image = null;
try {
image = ImageIO.read(new File("/tmp/img.png")); // link do obrazka znak wodny
panel.setSize(new Dimension(image.getWidth(), image.getHeight())); // set widget size
JLabel picLabel = new JLabel(new ImageIcon(image));
picLabel.setSize(new Dimension(image.getWidth(), image.getHeight()));
panel.add(picLabel);
panel.repaint();
console.getOut().println(image);
} catch (IOException ioe) {}
//obj.setOpacity(1.0f);
//obj.setPosX(new Double(screenSize.getWidth()-600).intValue());
//obj.setPosY(new Double(screenSize.getHeight()-600).intValue());
obj.setSticky(true);
chart.add(obj);
try {
File file = new File("/tmp/ChartImage.png"); // automatyczne zapisanie pod ta ścieżką i nazwą pliku
//ImageIO.write(chart.getImage(), "png", file);
BufferedImage combined = new BufferedImage(chart.getImage().getWidth(), chart.getImage().getHeight(), BufferedImage.TYPE_INT_ARGB);
Graphics g = combined.getGraphics();
g.drawImage(chart.getImage(), 0, 0, null);
g.drawImage(image, 0, 0, null);
g.dispose();
ImageIO.write(combined, "PNG", file);
} catch (Exception e) {
e.printStackTrace(console.getErr());
}
context.stop();
}
public void onAccount(IAccount account) throws JFException {
}
public void onMessage(IMessage message) throws JFException {
}
public void onStop() throws JFException {
if (f != null)
f.dispose();
}
public void onTick(Instrument instrument, ITick tick) throws JFException {
}
public void onBar(Instrument instrument, Period period, IBar askBar, IBar bidBar) throws JFException {
}
}
Kod: Zaznacz cały
package jforex;
import com.dukascopy.api.*;
import com.dukascopy.api.drawings.ICustomWidgetChartObject;
import java.awt.*;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics2D;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.lang.Object.*;
import java.util.*;
import javax.imageio.ImageIO;
import javax.swing.*;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.WindowConstants;
public class Strategy_11012021_xd implements IStrategy {
private IEngine engine;
private IConsole console;
private IHistory history;
private IContext context;
private IIndicators indicators;
private IUserInterface userInterface;
private IChart chart;
JFrame f = null;
ICustomWidgetChartObject obj = null;
private int counter = 0;
public void onStart(IContext context) throws JFException {
this.engine = context.getEngine();
this.console = context.getConsole();
this.history = context.getHistory();
this.context = context;
this.indicators = context.getIndicators();
this.userInterface = context.getUserInterface();
this.chart = context.getChart(Instrument.EURUSD);
for (IChart chart : context.getCharts()) {
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
obj = chart.getChartObjectFactory().createChartWidget();
JPanel panel = obj.getContentPanel();
panel.setLayout(null);
BufferedImage image = null;
try {
image = ImageIO.read(new File("/tmp/img.png")); // link do obrazka znak wodny
panel.setSize(new Dimension(image.getWidth(), image.getHeight())); // set widget size
JLabel picLabel = new JLabel(new ImageIcon(image));
picLabel.setSize(new Dimension(image.getWidth(), image.getHeight()));
panel.add(picLabel);
panel.repaint();
console.getOut().println(image);
} catch (IOException ioe) {}
obj.setFillOpacity(0f);
obj.setPosX(0.7f);
obj.setPosY(0.5f);
//obj.setSticky(true);
chart.add(obj);
try {
File file = new File("/tmp/ChartImage" + (counter++) +".png"); // automatyczne zapisanie pod ta ścieżką i nazwą pliku
//ImageIO.write(chart.getImage(), "png", file);
BufferedImage combined = new BufferedImage(chart.getImage().getWidth(), chart.getImage().getHeight(), BufferedImage.TYPE_INT_ARGB);
Graphics g = combined.getGraphics();
g.drawImage(chart.getImage(), 0, 0, null);
g.drawImage(image, 0, 0, null);
g.dispose();
ImageIO.write(combined, "PNG", file);
} catch (Exception e) {
e.printStackTrace(console.getErr());
}
}
context.stop();
}
public void onAccount(IAccount account) throws JFException {
}
public void onMessage(IMessage message) throws JFException {
}
public void onStop() throws JFException {
if (f != null)
f.dispose();
}
public void onTick(Instrument instrument, ITick tick) throws JFException {
}
public void onBar(Instrument instrument, Period period, IBar askBar, IBar bidBar) throws JFException {
}
}
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
https://www.myfxbook.com/members/rookie_t/pycha-kroczy-przed-upadkiem/7931743
- ninjaproject
- Maniak
- Posty: 4944
- Rejestracja: 30 lip 2019, 13:15
Re: JForex
Powiem tyle, że w MQL jest to o wiele prostsze.
Ale, na pewno w javie też się da tworzyć etykiety w tle?
Ja sobie stworzyłem taki wskaźnik, np.
Ale, na pewno w javie też się da tworzyć etykiety w tle?
Ja sobie stworzyłem taki wskaźnik, np.
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
Trejder, Mentor/trener, aka. Dadas, fx-technik, obecnie ninjaproject.
Programuję wskaźniki i EA do MetaTrader 4/5.
Programuję wskaźniki i EA do MetaTrader 4/5.
Re: JForex
Nie no, do tego jest API przygotowane https://www.dukascopy.com/wiki/en/devel ... ct-catalog. Ale tomasz pisał o znaku wodnym. W sumie to jest tam text i label. Jak tomasz nie potrzebuje znaku wodnego z jakimś oryginalnym obrazkiem to wystarczy wstawić na wykres text albo label, bo te obiekty mają metody (https://www.dukascopy.com/client/javado ... bject.html) .setOpacity, czyli przezroczystość. Ale znak wodny, to znak wodny...
https://www.myfxbook.com/members/rookie_t/pycha-kroczy-przed-upadkiem/7931743
- ninjaproject
- Maniak
- Posty: 4944
- Rejestracja: 30 lip 2019, 13:15
Re: JForex
To ujdzie za znak wodny?
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
Trejder, Mentor/trener, aka. Dadas, fx-technik, obecnie ninjaproject.
Programuję wskaźniki i EA do MetaTrader 4/5.
Programuję wskaźniki i EA do MetaTrader 4/5.