If you're running multiple Multicharts or TS instances, how do you keep your EasyLanguage files in sync?
I have 3 computers running with MC and TS. I know I can export a eld file and import it in the other instances, but this brings problems with consistency...
I've setup a git repository where I put all my functions/indicators/strategies in as simple text files. No comes the problem, how can I import simple text files into PowerLanguage, so the import will overwrite the existing files or create new files.
Is there a possibility to convert text files into eld/pla files?
Is there a third party editor for eld files?
I'd like to code in a more professional editor (intellij, eclipse ...) but I'm struggling to get code out of MC/TS and get it back into it. Any ideas would be very welcome!
keep EasyLanguage files in sync between different computers
-
- Posts: 79
- Joined: 28 Mar 2013
- Has thanked: 3 times
- Been thanked: 4 times
- Contact:
- TJ
- Posts: 7746
- Joined: 29 Aug 2006
- Location: Global Citizen
- Has thanked: 1033 times
- Been thanked: 2225 times
Re: keep EasyLanguage files in sync between different comput
How many indicators you are talking about? Just one or two? or hundreds?If you're running multiple Multicharts or TS instances, how do you keep your EasyLanguage files in sync?
I have 3 computers running with MC and TS. I know I can export a eld file and import it in the other instances, but this brings problems with consistency...
I've setup a git repository where I put all my functions/indicators/strategies in as simple text files. No comes the problem, how can I import simple text files into PowerLanguage, so the import will overwrite the existing files or create new files.
Is there a possibility to convert text files into eld/pla files?
Is there a third party editor for eld files?
I'd like to code in a more professional editor (intellij, eclipse ...) but I'm struggling to get code out of MC/TS and get it back into it. Any ideas would be very welcome!
-
- Posts: 79
- Joined: 28 Mar 2013
- Has thanked: 3 times
- Been thanked: 4 times
- Contact:
Re: keep EasyLanguage files in sync between different comput
> 300How many indicators you are talking about? Just one or two? or hundreds?
- TJ
- Posts: 7746
- Joined: 29 Aug 2006
- Location: Global Citizen
- Has thanked: 1033 times
- Been thanked: 2225 times
Re: keep EasyLanguage files in sync between different comput
What do you mean by "problems with consistency"?::
I have 3 computers running with MC and TS. I know I can export a eld file and import it in the other instances, but this brings problems with consistency...
::
-
- Posts: 79
- Joined: 28 Mar 2013
- Has thanked: 3 times
- Been thanked: 4 times
- Contact:
Re: keep EasyLanguage files in sync between different comput
If you have one main computer where you make all your changes and send it to the other system you should be fine.What do you mean by "problems with consistency"?::
I have 3 computers running with MC and TS. I know I can export a eld file and import it in the other instances, but this brings problems with consistency...
::
But what if you're changing code in computer1 and computer2 and not instantly copying those changes to the other systems, you're getting inconsistencies. Once forgot to copy the changes over you're already lost.
- TJ
- Posts: 7746
- Joined: 29 Aug 2006
- Location: Global Citizen
- Has thanked: 1033 times
- Been thanked: 2225 times
Re: keep EasyLanguage files in sync between different comput
There is no solution for such operations... Not in any types of single user software; whether it be wordprocessing or Photo editing, or whatever. If you have 2 copies of a software opened, they work independently of each other.If you have one main computer where you make all your changes and send it to the other system you should be fine.What do you mean by "problems with consistency"?::
I have 3 computers running with MC and TS. I know I can export a eld file and import it in the other instances, but this brings problems with consistency...
::
But what if you're changing code in computer1 and computer2 and not instantly copying those changes to the other systems, you're getting inconsistencies. Once forgot to copy the changes over you're already lost.
You have to make up your mind which computer is the Development Machine and which computer is the Production Machine. You cannot have it both ways. Not only the computer will be confused, you will be too.
ps. to be able to do real-time cross update, you will need a software that is designed from the ground up as a Multi-user Client-Server software.
-
- Posts: 79
- Joined: 28 Mar 2013
- Has thanked: 3 times
- Been thanked: 4 times
- Contact:
Re: keep EasyLanguage files in sync between different comput
actually it's pretty simple to achieve this.There is no solution for such operations... Not in any types of single user software; whether it be wordprocessing or Photo editing, or whatever. If you have 2 copies of a software opened, they work independently of each other.
ps. to be able to do real-time cross update, you will need a software that is designed from the ground up as a Multi-user Client-Server software.
as programming source code is not binary, you can use any file revision control system. I'm using git for my other programming stuff and either single or multi user environment we have no problem sharing our stuff across multiple platforms.
I've read that MC .NET saves the function/indicator in a readable file. So you can put a file revision control system on it. I'd would be nice to have similiar things for MC, too.
As my main questions aren't answered here again:
- Is there a possibility to convert text files into eld/pla files?
Is there a third party editor for eld files?
-
- Posts: 401
- Joined: 19 Jan 2011
- Location: Netherlands
- Has thanked: 85 times
- Been thanked: 125 times
Re: keep EasyLanguage files in sync between different comput
The indicators, signals etc. of MC are saved as readable files in the directory:
C:\ProgramData\TS Support\MultiCharts64\StudyServer\Studies\SrcEl
There are called *.el but you can open them with wordpad for example and you will get readable textfiles.
I don't know if any changes made in these files will cause the indicator to stop working. And also the filename that is used could be a problem to sync. But you can give it a try.
C:\ProgramData\TS Support\MultiCharts64\StudyServer\Studies\SrcEl
There are called *.el but you can open them with wordpad for example and you will get readable textfiles.
I don't know if any changes made in these files will cause the indicator to stop working. And also the filename that is used could be a problem to sync. But you can give it a try.
- TJ
- Posts: 7746
- Joined: 29 Aug 2006
- Location: Global Citizen
- Has thanked: 1033 times
- Been thanked: 2225 times
Re: keep EasyLanguage files in sync between different comput
it is ok to share files, but it is not the same as updating an indicator in real time that is in use.actually it's pretty simple to achieve this.There is no solution for such operations... Not in any types of single user software; whether it be wordprocessing or Photo editing, or whatever. If you have 2 copies of a software opened, they work independently of each other.
ps. to be able to do real-time cross update, you will need a software that is designed from the ground up as a Multi-user Client-Server software.
as programming source code is not binary, you can use any file revision control system. I'm using git for my other programming stuff and either single or multi user environment we have no problem sharing our stuff across multiple platforms.
I've read that MC .NET saves the function/indicator in a readable file. So you can put a file revision control system on it. I'd would be nice to have similiar things for MC, too.
As my main questions aren't answered here again:
- Is there a possibility to convert text files into eld/pla files?
Is there a third party editor for eld files?
The pla is the portable indicator file. When it is imported into MultiCharts, it is compiled into a DLL.
In another word, when you apply an indicator to your chart, you are not apply a pla, you are actually linking a DLL.
This is a technical question, I think you have to contact tech support directly to get the answer you need. Please do share with us the answer.
- furytrader
- Posts: 354
- Joined: 30 Jul 2010
- Location: Chicago, IL
- Has thanked: 155 times
- Been thanked: 217 times
Re: keep EasyLanguage files in sync between different comput
One important issue to consider, as TJ mentioned, is that there's a difference between the source code and a compiled file. Do you want to sync your compiled code or just the plaintext files?
- fbertram
- Posts: 166
- Joined: 16 Oct 2014
- Location: Seattle, USA
- Has thanked: 36 times
- Been thanked: 76 times
- Contact:
Re: keep EasyLanguage files in sync between different comput
I have basically the complete MultiCharts folder in ProgramData imported into a git repository. An extensive gitignore makes sure that I only track the important files. I use two machines, one for development and one for trading. I am only using the master branch for trading. Editing on both machines simultaneously is not too much of a problem with git.
Now to mention the problems:
* the MultiCharts editor does not detect when a file is changed externally while open. Workaround is to have no source files open, when pulling from git.
* MultiCharts does not properly check the dependencies (the dates of the source files against the dates of compiled studies). Workaround is to pull changes from git, open the file in the editor, touch it and the re-compile.
* MultiCharts does not understand that a new source file probably results in a new study. This is a problem, when adding new files on one computer. Workaround: create a study with the same name on the other machine. Close editor, pull from git, open in editor, touch compile.
Here is a wide fields of possible improvements for MultiCharts. Supporting a revision control system is a hard requirement for any series software development...
Cheers, Felix
Now to mention the problems:
* the MultiCharts editor does not detect when a file is changed externally while open. Workaround is to have no source files open, when pulling from git.
* MultiCharts does not properly check the dependencies (the dates of the source files against the dates of compiled studies). Workaround is to pull changes from git, open the file in the editor, touch it and the re-compile.
* MultiCharts does not understand that a new source file probably results in a new study. This is a problem, when adding new files on one computer. Workaround: create a study with the same name on the other machine. Close editor, pull from git, open in editor, touch compile.
Here is a wide fields of possible improvements for MultiCharts. Supporting a revision control system is a hard requirement for any series software development...
Cheers, Felix
- JoshM
- Posts: 2195
- Joined: 20 May 2011
- Location: The Netherlands
- Has thanked: 1544 times
- Been thanked: 1565 times
- Contact:
Re: keep EasyLanguage files in sync between different comput
This PM issue might be worth tracking/voting for in this context:
MC-255 - Implement SVN (or other versioning system) Integration on PowerLanguage Editor
It would be quite helpful (also when someone always works on one computer) to have the PowerLanguage Editor work with git.
MC-255 - Implement SVN (or other versioning system) Integration on PowerLanguage Editor
It would be quite helpful (also when someone always works on one computer) to have the PowerLanguage Editor work with git.
-
- Posts: 79
- Joined: 28 Mar 2013
- Has thanked: 3 times
- Been thanked: 4 times
- Contact:
Re: keep EasyLanguage files in sync between different comput
Could you share your .gitignore that would be great!An extensive gitignore makes sure that I only track the important files.
- fbertram
- Posts: 166
- Joined: 16 Oct 2014
- Location: Seattle, USA
- Has thanked: 36 times
- Been thanked: 76 times
- Contact:
Re: keep EasyLanguage files in sync between different comput
Hi FutureTrader,
here is my .gitignore. I have replaced the leading period with an underscore.
Cheers, Felix
here is my .gitignore. I have replaced the leading period with an underscore.
Cheers, Felix
- Attachments
-
- _gitignore.zip
- (6.53 KiB) Downloaded 240 times
- fbertram
- Posts: 166
- Joined: 16 Oct 2014
- Location: Seattle, USA
- Has thanked: 36 times
- Been thanked: 76 times
- Contact:
Re: keep EasyLanguage files in sync between different comput
BTW, I am using Atlassian's SourceTree as a client. Good tool, I really like the Git-Flow feature, it's commercially maintained and it's free (requires registration though).
Cheers, Felix
Cheers, Felix